1.輸入10^5個只有一位數字的整數,可以用o(n)複雜度將其排序的演算法是:桶排序
2.資料序列只能是下列哪種排序演算法的兩趟排序結果?ba 氣泡排序
b 快速排序
c 插入排序
d 堆排序
解析:如果是氣泡排序,末尾是最大或最小的兩個數;
如果是插入排序,最前面應該是最大或最小的兩個數;
如果是堆排序,末尾因該是篩選出來的兩個數。
3.對10tb的資料檔案進行排序,應使用的方法是:歸併排序
4.下列排序方法中,若將順序儲存更換為鏈式儲存,則演算法的時間效率會降低的是:1.插入排序;2.選擇排序;3.起泡排序;4.希爾排序;5.堆排序. 4,5
5.將序列排序。若前2趟排序的結果如下:第1趟排序後:2, 12, 16, 10, 5, 34, 88
第2趟排序後:2, 5, 10, 12, 16, 34, 88
則可能的排序演算法是:
a.氣泡排序
b.快速排序
c.歸併排序
d.插入排序
6.在對n個元素進行排序時,基於比較的演算法中,其「最壞時間複雜度」中最好的是:
a.o(logn)
b.o(n)
c.o(nlogn)
d.o(n^2)
7.下列排序演算法中,哪種演算法可能出現:在最後一趟開始之前,所有的元素都不在其最終的位置上?(設待排元素個數n>2)a.氣泡排序
b.插入排序
c.堆排序
d.快速排序
8.資料序列只能是下列哪種排序演算法的兩趟排序結果?(2分)
a.氣泡排序
b.選擇排序???
c.插入排序
d.快速排序
9.在基於比較的排序演算法中,哪種演算法的最壞情況下的時間複雜度不高於o(nlogn)?(1分)
a.氣泡排序
b.歸併排序
c.希爾排序
d.快速排序
10.下列排序演算法中,時間複雜度不受資料初始狀態影響,恒為o(nlogn)的是:(1分)
a.氣泡排序
b.直接選擇排序
c.堆排序
d.快速排序
歸併排序和基數排序
空間複雜度 o n o n o n 時間複雜度 o n log2 n o nlog 2n o nlog 2 n 穩定性 穩定 適用於順序儲存和鏈式儲存 typedef int elemtype 合併兩個相鄰的有序線性表 void merge elemtype a,int low,int mid,in...
11 歸併排序和基數排序
核心思想 拆分和合併,拆分其實只幹了一件事將陣列2等份,一直拆分到無法拆分為止,合併在於從最小拆分單元先排序,然後向上合併再排序,最終得到乙個有序陣列。分支演算法採用的遞迴操作,核心 在於合併。public class mergesort int temp newint arr.length mer...
快速 歸併和基數排序
快速排序 public class quicksort while arr r pivot if l r temp arr l arr l arr r arr r temp if arr l pivot if arr r pivot if l r if leftif right l public c...