常用的一些排序演算法

2021-10-04 14:07:34 字數 680 閱讀 4506

整理一下各種排序演算法

1.氣泡排序

時間複雜度o(n^2),時間比較長,但是比較容易理解和實現。

//氣泡排序

public int sortarray(int nums) }}

return nums;

}

2.快速排序

選定乙個基準值(一般是陣列的第乙個值),一次把比基準小的數字放在左邊,比基準大的數字放在右邊。然後分別對左邊部分和右邊部分執行相同的操作。利用遞迴來完成子陣列的排序。

時間複雜度:o(nlog2n)

//快速排序

public int sortarray(int nums)

public void qsort(int nums, int start, int end)

int i = start;

int j = end;

int basenum = nums[(start + end) / 2];

while (i <= j)

while (nums[j] > basenum)

if (i < j) else if (i == j)

}qsort(nums, start, j);

qsort(nums, i, end);

}

一些常用演算法 排序

1.冒泡法 1 比較第乙個數和第二個數,若為逆序a 0 a 1 則交換,以此類推 直到第n 1個數和第n個數比較完為止 第一次氣泡排序,結果最大的數被安置在最後乙個元素位置上。2 對前n 1個數進行第二次氣泡排序,結果使次大的數被安置在n 1的位置上。3 重複上述過程,經過n 1次氣泡排序後,排序結...

一些常用的排序演算法

排序演算法 插入排序 直接插入排序 折半排序 希爾排序 交換排序 氣泡排序 快速排序 選擇排序 簡單選擇排序 堆排序 歸併排序 分配排序 箱排序 基數排序 author kevin public class sorting else break 折半排序,降序 在乙個有序的子檔案中,用折半查詢方法查...

常用的一些排序演算法(C 實現)

常用的排序演算法有氣泡排序,選擇排序,插入排序,歸併排序 希爾排序,堆排序等 1 冒泡 氣泡排序就是像旗袍一樣,最大的值逐漸上浮,我的實現方法是採用遞迴的,當然也可以不用遞迴 void bubblesort2 int array,int length if index length 1 bubble...