問題詳情
若 n 表示欲排序之記錄(Record)數量且 n>2,下列為有關插入排序(Insertion sort)演算法之敘述:<1>插入排序(Insertion sort)演算法之平均情況(Average case)、最佳情況(Best case)、最糟情況(Worst case)之時間複雜度皆相同。<2>插入排序(Insertion sort)演算法具有“穩定(Stable)”性質。<3>插入排序(Insertion sort)演算法是以比較鍵值為基礎之排序演算法,比較鍵值之次數與各記錄原始排列順序有關。<4>插入排序(Insertion sort)演算法之最糟情況(Worst case)之時間複雜度發生於所有記錄已經依據 鍵值之順序排列時。<5>使用插入排序(Insertion sort)演算法進行排序實際所需之時間與 n 值有關,但與記錄之長度無關。請選出最適合之選項:
(A)<1><2>正確;<4><5>錯誤
(B)<3><4>正確;<1><5>錯誤
(C)<1><3>正確
(D)<4><5>錯誤
參考答案
答案:D
難度:困難0.257143
統計:A(25),B(45),C(32),D(45),E(0) #
個人:尚未作答書單:(A)可以有無限多個步驟
用户評論
【JEREMY65】評論
插入排序法(Insertion Sort)是排序演算法的一種,他是一種簡單容易理解的排序演算法,其概念是利用另一個數列來存放已排序部分,逐一取出未排序數列中元素,從已排序數列由後往前找到適當的位置插入。運算流程如下:從未排序數列取出一元素。由後往前和已排序數列元素比較,直到遇到不大於自己的元素並插入此元素之後;若都沒有則插入在最前面。重複以上動作直到未排序數列全部處理完成。流程示意圖:然而實作上通常不使用額外的數列來儲存已排序的部分,而使用原地(In-place)的方式來完成,數列的左半部表示已排序部分,右半部表示未排序部分,不另外使用數列。在與已排序的部分比較時,利用指派(Assign)的方式將元素往右位移,...