對序列進行排序,進行一趟後資料的排列變為;則採用的是()排序
答:shell
25,84,21,47,15,27,68,35,20進行排序時,變化為「20,15,21,25,47,27,68,35,84」「15,20,21,25,35,27,47,68,84」「15,20,21,25,27,35,47,68,84」的排序方法是()?
選擇排序
希爾排序
歸併快速排序
排序時,若不採用計數排序等科技換時間的方法,合併m個長度為n的已排序陣列的時間複雜度最優為()
o(nm^2)
o(mn(logm))
o(nm)
o(mlog(n))
這道題選b。
合併m個長度為n的已排序陣列的時間複雜度為o(nmlogm)。思路是:首先將m個已排序陣列的第乙個數,建立大小為m的小根堆,時間複雜度o(m)。然後每次輸出堆頂的數,再將其所屬已排序陣列的後乙個數放入堆頂,調節小根堆。因為我們有m*n個數,小根堆調整時間為o(logm),所以時間複雜度o(nmlogm)。
有一組資料(15,9,7,8,20,-1,7,4),用堆排序的篩選方法建立的初始堆為()
正確答案: c 你的答案: d (錯誤)
-1,4,8,9,20,7,15,7
-1,7,15,7,4,8,20,9
-1,4,7,8,20,15,7,9
abc均不對
對n個元素的陣列進行(),其平均時間複雜度和最壞情況下的時間複雜度都是o(nlogn)
正確答案: c 你的答案: a (錯誤)
希爾排序
快速排序
堆排序
選擇排序
對一組資料(2,12,16,88,5,10)進行排序,若前三趟排序結果如下()
第一趟 : 2,12,16,5,10,88
第二趟 : 2,12,5,10,16,88
第三趟 : 2,5,10,12,16,88
則採用的排序方法可能是 ()
正確答案: a 你的答案: d (錯誤)
氣泡排序
希爾排序
歸併排序
基數排序
題目10 基本的排序演算法
解題思路 排序演算法有很多種,插入排序,氣泡排序,希爾排序 shellsort 快速 排序,堆排序,歸併排序,基排序等。作為一名軟體開發人員,需要能夠自己動手實 現這些演算法,掌握這些演算法的思想,以及這些演算法的時間複雜度,空間複雜度。雖然 很時候,在實際的工作中,有庫函式可以提供給我們使用,但是...
leetcode 排序題目
merge k sorted lists insertion sort list sort list first missing positive sort colors 147.insertion sort list sort a linked list using insertion sort....
成績排序題目
有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報括姓名 長度不超過100的字串 年齡 整...