实现高随机度随机序列的一种方法!- -| 回首页 | 2005年索引 | - -C语言笔记!

四种排序方法!- -

                                      

排序(shall版);排序(插入版)排序(选择版);排序(气泡版)。

排序(shall版)
void shall(char *items,int count)
{
register int i ,j,gap,k;
char x,a[5];
a[0]=9;a[1]=5;a[2]=3;a[3]=2;a[4]=1;
for(k=0;k<5;k++){
gap=a[k];
for(i=gap;ix=items;
for(j=i-gap;(x=0);j=j-gap)
items[j+gap]=items[j];
items[j+gap]=x;
}
}
}

排序(插入版)!
void insert(char *items,int count)
{ register int a ,b;
char t;
for(a=1;at=items[a];
for(b=a-1;b>=0&&(t;b--)
items[b+1]=items
;
tiems[b+1]=t;
}
}
;b--)
items[b+1]=items
;
tiems[b+1]=t;
}
}

排序(选择版)!
void selection(char items,int count)
{
register int a,b,c;
char t;
int exchange;
for(a=0;aexchange=0;
c=a;
t=items[a];
for(b=a=1;bif(itemsc=b;t=items;
exchange=1;
}
}
if(exchange){
items[c]=times[a];
items[a]=t;
}
}
}

排序(气泡版)!
void bubble(char *items ,int count)
{
register int a,b;
register char t;
    for (a=1;afor(b=count-1;b>a;--b){
if(items[b-1]>items
){
t=items[b-1];
items[b-1]=items
;
items
=t;
}
}
}

- 作者: 刘加开 2005年03月16日, 星期三 19:52 加入博采

Trackback

你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=952475

回复

评论内容: