排序演算法複習

2021-07-25 23:30:29 字數 535 閱讀 2335

**參考自

直接插入排序:(從小到大排列)

n個資料,第乙個資料平凡有序; 假設前i-1個資料串有序,根據第i個的大小將第i個插入到此串中,則前i個的資料串也有序。  ==> 因此可得到n個資料有序。

插入方法: 待插入元素為第i元素,數值存為temp,將 i 之前的元素 j 從第 i - 1 元素開始與之比較——如果比temp大,則將該元素後移一位(data[j+1] = data[j]),否則找到temp的位置,插入temp值,其前方元素也不需要與temp再比較了,因為前i-1個有序,此位置往前的一定也小於等於temp。

**:

public static void insertsort();

int temp=0;

for(int i = 1; i < data.length; i++)

data[j+1] = temp;

} for(int i=0;i < data.length;i++)

}

演算法複習 排序

排序中主要有插入排序 氣泡排序 歸併排序 快速排序等 主要從空間消耗 時間複雜度 最差時間複雜度等方面考慮演算法的好處 1.插入排序 插入排序是一種簡單直觀的排序演算法。它的工作原理非常類似於我們抓撲克牌 對於未排序資料 右手抓到的牌 在已排序序列 左手已經排好序的手牌 中從後向前掃瞄,找到相應位置...

演算法複習 排序

穩定的排序 排序之後,源資料中相同的資料相對位置不會發生改變 不穩定的排序 反之。test array 12,10,1,5,10 foreach test as val for i 0 i test i bin test222,58,0,count test222 1 function bin da...

排序演算法複習

created by nickwang on 2019 8 24.直接插入排序 o n 2 折半插入排序 o n 2 氣泡排序 o n 2 快速排序 o nlogn 選擇排序 o n 2 堆排序 o nlogn 歸併排序 o nlogn ifndef c sort h define c sort h...