| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 648 人关注过本帖
标题:请教有关shell排序的问题
只看楼主 加入收藏
木头lbj
Rank: 7Rank: 7Rank: 7
来 自:黄山
等 级:黑侠
威 望:1
帖 子:269
专家分:527
注 册:2010-11-6
收藏
得分:0 
帮顶

。。。!!!)))000
2011-06-22 11:27
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
收藏
得分:0 
回复 7楼 voidx
你的程序也也看明白了,基本思想是一样的。就是我的这个程序有时能正确排序,
有时就差一点,我还是想我错在哪里,麻烦在我的基础上做下修改,不用另起炉灶了,
不甚感激。
2011-06-22 14:00
voidx
Rank: 12Rank: 12Rank: 12
来 自:邯郸
等 级:火箭侠
帖 子:1250
专家分:3538
注 册:2011-4-7
收藏
得分:0 
回复 12楼 ybjkl
你这个写的有点不伦不类,咋看都不像 shell 排序
2011-06-22 14:19
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
收藏
得分:0 
回复 13楼 voidx
这个
我是按参考书上写的,就是shell排序啊,我都看了你写的程序,算法思想是一样的啊。
2011-06-22 14:33
voidx
Rank: 12Rank: 12Rank: 12
来 自:邯郸
等 级:火箭侠
帖 子:1250
专家分:3538
注 册:2011-4-7
收藏
得分:20 
你这样写用 a[i] 跟 a[j] 比较,并且一旦发现 a[i] 与 a[j] 需要交换就立即交换,不能保证实现完全排序。
我在用你的代码进行单步调试的时候发现以下情况:
d == 1 时,数组的最初状态为:2 1 0 3 4 7 6 5 8 9
此时 i == 1, j == 0; 交换 a[0] 与 a[1]
1 2 0 3 4 7 6 5 8 9
此时 i == 2, j == 1; 交换 a[2] 与 a[1]
1 0 2 3 4 7 6 5 8 9
此时 i == 2, j == 0; 不必交换

之后,0 再也没有改变位置的机会了
2011-06-22 15:42
ybjkl
Rank: 2
等 级:论坛游民
帖 子:86
专家分:85
注 册:2011-6-21
收藏
得分:0 
回复 15楼 voidx
问题已解决,多谢。
2011-06-22 16:16
快速回复:请教有关shell排序的问题
数据加载中...
 
   



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

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