数据结构作业,请帮做下

第八章1.分别用下列排序算法对关键字序列(49,7,50,5,94,16,90,29,71)进行排序,写出每一趟排序所得到的中间结果。(1)直接插入排序(2)希尔排序(3... 第八章
1. 分别用下列排序算法对关键字序列(49,7,50,5,94,16,90,29,71)进行排序,写出每一趟排序所得到的中间结果。
(1) 直接插入排序
(2) 希尔排序
(3) 改进的冒泡排序
(4) 快速排序
(5) 直接选择排序
(6) 堆排序
(7) 合并排序
2. 一种冒泡排序算法是所谓“上浮式的”,即每趟排序都把较小的关键字“浮”到上面(数组下标较小的那一边)去。请编写一个改进的“下沉式的”冒泡排序算法。
3. 举例说明直接选择排序算法、快速排序算法和堆排序算法不是稳定的。
展开
 我来答
cocoolwsl
推荐于2016-06-22 · 超过35用户采纳过TA的回答
知道答主
回答量:84
采纳率:0%
帮助的人:37.8万
展开全部
(1) 直接插入排序
初始序列:(49)7,50,5,94,16,90,29,71
第一趟:(7 49)50,5,94,16,90,29,71
第二趟:(7,49,50)5,94,16,90,29,71
第三趟:(5,7,49,50)94,16,90,29,71
第四趟:(5,7,49,50,94)16,90,29,71
第五趟:(5,7,16,49,50,94)90,29,71
第六趟:(5,7,16,49,50,90,94)29,71
第七趟:(5,7,16,29,49,50,90,94)71
第八趟:(5,7,16,29,49,50,71,90,94)
其他的排序,课本上都有例题讲解的,自己试试做下
追问
2)希尔排序
分五组{7,49},{5,50},{16,94},{29,90},{70}
分三组{5,7,49,50},{16,29,90,94},{71}
分两组{5,7,16,29,49,50,90,94}{71}
最后{5,7,16,29,49,50,71,90,94,}
对吗
追答
分五组{7,49},{5,50},{16,94},{29,90},{70}
分三组{5,7,49,50},{16,29,90,94},{71}
分两组{5,7,16,29,49,50,90,94}{71}
你好,你这是归并排序,不是希尔排序
希尔排序是用“间隔”来划分区间的,间隔依次用:4,2,1 ,共3趟就可以实现了。
第一趟结果:49 7 50 5 71 16 90 29 94
第二趟结果:49 5 50 7 71 16 90 29 94
第三趟结果:5 7 16 29 49 50 71 90 94
爵爷2货2062
2014-05-26 · TA获得超过107个赞
知道答主
回答量:195
采纳率:100%
帮助的人:147万
展开全部
明天来做哦。
希望能解决您的问题。
追问
好的,先谢谢啦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式