看板 TransCSI 關於我們 聯絡資訊
n 個元素存於陣列 L 中排序,在插入排序法中,若決定插入元素 L[i] 的位置利用 二分搜尋法,在 L[1] <= L[2] <= ..... <= L[i] 中找出適當位置 (1) 最壞情形下,此一修改的插入排序元素比較總數為何? 是 O(n^2) ? O(n) ? 還是 O(log n) ? (2) 最壞情形下,共需元素搬動總數為何? 是 n(n-1)/2 ? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.173.242.32
future1234:用Decision tree求最多比較次數: 取 (log2(N+1))上限 07/01 14:16
forris:轉錄至看板 Examination 07/01 20:39
future1234:Binary Insertion Sort: 07/02 03:07
future1234:(1)原本比較次數: O(N) 採Binary Search降到 O(logN) 07/02 03:08
future1234:(2)因為Binary Search本身仍採Array儲存資料 07/02 03:10
future1234:因此,元素搬移次數為 O(N) 07/02 03:10
future1234:不過,Linear Insertion Sort就可以把搬移次數降到O(1) 07/02 03:13