| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 998 人关注过本帖
标题:[讨论]关于链表排序问题
只看楼主 加入收藏
cd_tiger
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-6-10
收藏
 问题点数:0 回复次数:5 
[讨论]关于链表排序问题

请问:
如何对一个建立好的链表排序?(如:一个学生信息链表、包含:学好、姓名、各种成绩等,按学号排序)。

备注:不要采用结构体数组排序。而是一个对动态的链表直接排序!

[此贴子已经被作者于2006-6-27 11:22:29编辑过]

搜索更多相关主题的帖子: 链表 讨论 
2006-06-26 17:06
cd_tiger
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-6-10
收藏
得分:0 
有没人回答呢?
2006-06-26 17:49
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
回复:(cd_tiger)有没人回答呢?
以下是引用cd_tiger在2006-6-26 17:49:28的发言:
有没人回答呢?

谈谈个人观点:
1。最好在创建链表时就开始排序。相当于打扑克时,不要积压了一大把牌再开始理顺它们,而是每接收到一张牌,就立马将它它安插到合适的位置上去。
2。当然,上面谈的是一种愿望而已。实际情况下,已经搞好的链表再按照某种权重因子重新排序也是经常发生的。
3。这时我会有三种考虑:
⑴ 不改变链接关系,但是在某种排序法控制下有条件地去交换结点数据。这样做代码短。
⑵ 遍历排序前的旧链表,把数据全写到磁盘上去,然后执行快速排序,最后写出新链表。
⑶ 老老实实改变链接关系,这样一来代码实际可能是最罗唆的。


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-26 19:09
cd_tiger
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-6-10
收藏
得分:0 
以下是引用–★–在2006-6-26 19:09:05的发言:

谈谈个人观点:
1。最好在创建链表时就开始排序。相当于打扑克时,不要积压了一大把牌再开始理顺它们,而是每接收到一张牌,就立马将它它安插到合适的位置上去。
2。当然,上面谈的是一种愿望而已。实际情况下,已经搞好的链表再按照某种权重因子重新排序也是经常发生的。
3。这时我会有三种考虑:
⑴ 不改变链接关系,但是在某种排序法控制下有条件地去交换结点数据。这样做代码短。
⑵ 遍历排序前的旧链表,把数据全写到磁盘上去,然后执行快速排序,最后写出新链表。
⑶ 老老实实改变链接关系,这样一来代码实际可能是最罗唆的。

我想考虑的就是不改变链表的关系,直接对链表进行操作。如果去一一交换数据接点的数据,那每个节点的数据非常多那不是很麻烦?如果把数据写到磁盘上,那就不是对链表的直接操作了。
我本来想利用指针,但每个数据结点都不是连续存放的。可否有一种更好的机制来排序呢!

2006-06-27 11:21
cd_tiger
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-6-10
收藏
得分:0 
各位高手快了帮帮忙拉!(之所以考虑对链表直接排序,而不是排好序后再建立连表,那是因为我想动态的输入N个学生的信息)!
2006-06-27 14:39
SunShining
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:31
帖 子:2215
专家分:0
注 册:2006-2-17
收藏
得分:0 
以下是引用cd_tiger在2006-6-27 11:21:43的发言:

我想考虑的就是不改变链表的关系,直接对链表进行操作。如果去一一交换数据接点的数据,那每个节点的数据非常多那不是很麻烦?如果把数据写到磁盘上,那就不是对链表的直接操作了。
我本来想利用指针,但每个数据结点都不是连续存放的。可否有一种更好的机制来排序呢!

不懂你什么意思

[glow=255,violet,2]闭关修炼ing...[/glow] [FLASH=360,180]http://www./chinaren.swf[/FLASH]
2006-06-27 14:54
快速回复:[讨论]关于链表排序问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018248 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved