天天看點

【資訊學CSP-J近16年曆年真題64題】真題練習與解析 第2題之插入排序插入排序 (排序、歸并排序)

【資訊學CSP-J近16年曆年真題64題】真題練習與解析 第2題之插入排序插入排序 (排序、歸并排序)

插入排序 (排序、歸并排序)

描述

插入排序是一種非常常見且簡單的排序算法。小 Z 是一名大一的新生,今天 H 老師剛剛在上課的時候講了插入排序算法。

假設比較兩個元素的時間為 O(1),則插入排序可以以 O(n^2) 的時間複雜度完成長度為 n 的數組的排序。不妨假設這 n 個數字分别存儲在 a1, a2, …, an之中,則如下僞代碼給出了插入排序算法的一種最簡單的實作方式:

這下面是 C/C++ 的示範代碼:

繼續閱讀