数据结构的问题,急需!

[复制链接]
查看11 | 回复0 | 2007-4-12 20:37:35 | 显示全部楼层 |阅读模式
排序是这样的,合并很简单,随便让一个单链表的尾部指向第二个链表的head,再做次排序即可。void change( stu *s, stu *p, stu *head ){ stu *tmp1 = head, *tmp2 = head; while ( tmp1->next != s ) {tmp1 = tmp1->next; } while ( tmp2->next != p ) {tmp2 = tmp2->next; } tmp1->next = p; p->next = s->next; s->next = tmp2->next->next; tmp2->next = s;}void sort( stu* head ){ stu *p = head, *s = head; while ( s->next ) {p = s->next;while ( p ){ if ( s->num > p->num )
change( s, p, head ); p = p->next;}s = s->next; }}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行