国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

排序算法3——直接插入排序

2019-11-11 01:06:59
字體:
來源:轉載
供稿:網友

直接插入排序的平均復雜度是 /(O(n^2)/),因此應用場景較少。

直接插入排序的思路是: 每次處理一個數據,將其插入到一個已經排好序的子序列中,直到數據處理完畢。

下面給出一個動畫示例:

這里寫圖片描述

從上面來看我們也可以發現一些優點:

(1) 實現簡單,比其它 /(O(n^2)/) 排序算法高效; (2) 當數據已經基本有序時,效率較高; (3) 排序穩定,并且需要的額外存儲空間小; (4) 可以快速處理新增加的數據;

參照動畫我們可以很容易的理解下面的c++代碼:

void insertsort (int data[], int n){ int j, temp; // 外層循環負責依次處理每一個元素(忽略第一個) for (int i = 1; i < n; i++){ j = i; // 內層循環負責移動數據直到找到插入的位置 while (j > 0 && data[j] < data[j-1]){ temp = data[j]; data[j] = data[j-1]; data[j-1] = temp; j--; } }}

未完待續。。。。

參考資料:

(1)WIKI:https://en.wikipedia.org/wiki/Insertion_sort


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 花莲县| 许昌县| 苍南县| 浑源县| 礼泉县| 蓬安县| 扬州市| 琼海市| 芒康县| 老河口市| 东源县| 泰兴市| 璧山县| 梁山县| 高唐县| 丹棱县| 石河子市| 阳东县| 湾仔区| 玉环县| 尤溪县| 丹寨县| 文山县| 凯里市| 井研县| 城市| 揭西县| 呼伦贝尔市| 望谟县| 徐州市| 梨树县| 正定县| 蕲春县| 吴旗县| 社旗县| 合作市| 两当县| 罗江县| 洞头县| 大荔县| 炉霍县|