主题:[讨论]什么是优化冒泡排序???谢谢。
interegg
[专家分:80] 发布于 2006-08-25 08:38:00
小弟不才,不懂优化冒泡排序,谁能引导一下小弟。谢谢。
回复列表 (共15个回复)
沙发
贺天行宝 [专家分:2300] 发布于 2006-08-25 19:41:00
我也不知道,可能就是选择排序,每次找第i小的放到第i为,主要是交换次数少
算法:
1、输入10个数到数组中
2、从大到小排序数组a
for i:=1 to 9 do
begin
k:=i;
for j:=i+1 to 10 do
if a[k]<a[j] then k:=j;
if i<>k then 交换a[k]与a[j]
3、输出排序后的数组a
板凳
fcffc [专家分:50] 发布于 2006-08-28 13:19:00
就是快速排序
是最快的排序
3 楼
interegg [专家分:80] 发布于 2006-08-28 13:58:00
我是初学者,不太懂,能否具体说一下?谢谢。
4 楼
贺天行宝 [专家分:2300] 发布于 2006-08-28 14:22:00
喂!太抠门了吧,怎么只给10分阿
5 楼
interegg [专家分:80] 发布于 2006-08-28 14:24:00
我是初学的,讲得不清楚点就不太懂,可不可以具体讲一下,谢谢。
6 楼
lmj9201 [专家分:1400] 发布于 2006-08-28 14:58:00
贺天行宝你错了,优化冒泡排序是指在比较后只记录下标,而不是直接交换,这样省了交换的时间,也不是快速排序,快排是另外的
7 楼
interegg [专家分:80] 发布于 2006-08-28 15:00:00
只记录下标,那什么时候交换?
谢谢。
8 楼
lmj9201 [专家分:1400] 发布于 2006-08-28 15:01:00
和你给的算法也差不多
9 楼
interegg [专家分:80] 发布于 2006-08-28 15:05:00
哦,谢谢,你回做逻辑判断题吗?
我有张帖子,刚发,你去做一下
10 楼
lmj9201 [专家分:1400] 发布于 2006-08-29 12:21:00
在循环一次以后交换和贺天的算法也差不了多少
我来回复