问答题
已知下列各种初始状态(长度为n)的元素,试问当利用直接插入排序进行排序时,至少需要进行多少次比较(要求排序后的记录由小到大顺序排列)? ⑴关键码从小到大有序(key1< key2< …< keyn)。 ⑵关键码从大到小有序(key1> key2 >…> keyn)。 ⑶奇数关键码顺序有序,偶数关键码顺序有序(key1< key3< …,key2key4…)。 ⑷前半部分元素按关键码顺序有序,后半部分元素按关键码顺序有序,即:(key1< key2< …< keym,keym+1< keym+2 <…)
依题意,最好情况下的比较次数即为最少比较次数。⑴插入第i(2≤i≤n)个元素的比较次数为1,因此......
(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
问答题 判别下列序列是否为堆,如不是,按照堆排序思想把它调整为堆,用图表示建堆的过程。 ⑴(1,5,7,25,21,8,8,42) ⑵(3,9,5,8,4,17,21,6)
问答题 对n=7,给出快速排序一个最好情况和最坏情况的初始排列的实例。
问答题 已知数据序列为(12,5,9,20,6,31,24),对该数据序列进行排序,写出插入排序、起泡排序、快速排序、简单选择排序、堆排序以及二路归并排序每趟的结果。