lovecreat
全部博文(63)
uC/OS-II(1)
嵌入式linux(2)
VxWorks(0)
FPGA(0)
DSP(0)
WinCE(0)
2011年(35)
2010年(28)
jeremy_k
sdccf
prolj
格伯纳
run_xion
xzg1020
yxchugo
go299
hanwei_1
simpleka
lxglxt
zhwenh
分类: C/C++
2010-09-06 17:51:57
#include <stdio.h> #include <stdlib.h> #define N 10 typedef struct node *Link; struct node{ int item; Link next; } Link NODE(int item, Link next) { link t=malloc(sizeof *t); t->item = item; t->next = next; return t; } void show_list(link head) { link t; for(t=head->next; t; t->next) printf("%3d", t->item); printf("/n"); } Link init_list() { int i; Link t = NULL; for(i=0; i<=N; i++) t=NODE(rand()%100, t); return t; } Link selection_sort(Link head) { link s=NULL, t, max; while(head->next) { for(max=head, t=max->next; t->next; t=t->next) if(t->next->item > max->next->item) max = t; t=max->next; max->next=t->next; t->next=s; s=t; } head->next = s; return head; } int main(void) { Link head=init_list(); show_list(head); head=selection_sort(head); show_list(head); return 0; }
上一篇:2440手册\arm资源帖
下一篇:递归的练习、优化!
登录 注册