数据结构作业,请帮做下
第八章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. 举例说明直接选择排序算法、快速排序算法和堆排序算法不是稳定的。 展开
1. 分别用下列排序算法对关键字序列(49,7,50,5,94,16,90,29,71)进行排序,写出每一趟排序所得到的中间结果。
(1) 直接插入排序
(2) 希尔排序
(3) 改进的冒泡排序
(4) 快速排序
(5) 直接选择排序
(6) 堆排序
(7) 合并排序
2. 一种冒泡排序算法是所谓“上浮式的”,即每趟排序都把较小的关键字“浮”到上面(数组下标较小的那一边)去。请编写一个改进的“下沉式的”冒泡排序算法。
3. 举例说明直接选择排序算法、快速排序算法和堆排序算法不是稳定的。 展开
2个回答
展开全部
(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)
其他的排序,课本上都有例题讲解的,自己试试做下
初始序列:(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
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询