C 實現各種排序 快排 插排 冒泡

2021-10-02 04:40:03 字數 837 閱讀 8476

1 插入排序

//插入排序

//主要思想:將陣列中的第乙個數認為是有序排列,剩下的n-1個數與第乙個數比較,再進行排序

//有兩層迴圈,第一層控制排序的趟數,第二層控制每一趟比較的個數

#include

using namespace std;

int main();

for(int i=0;i<10;i++)cin>>a[i]; //記錄所有陣列

for(int i=0;i<10;i++)//如果前面的數比後面的數大,前面的數後移             

else break;

}a[k]=x;//完成插入操作

2 氣泡排序

//氣泡排序

#include

using namespace std;

#define n 10

int main()

}         

}for(int i=0;i3 快速排序

#include

#include

using namespace std;

void quicksort(int s,int left,int right){

if(left=x)j--;//從右往左找第乙個小於x的數

希爾排序、堆排序、插入排序再續

python實現快排 氣泡排序

1 快排 快排 從一堆雜亂的資料中挑選乙個基準值,將這些數字和基準值一一比較,大的放基準值的右邊,小的放左邊 實現思路 定義乙個函式,挑選列表的首個數字作為基準值,其他數字比基準值小的數字生成列表,同理,其他數字和基準值大的數字生成另乙個列表,再遞迴快排這兩個列表 def quick sort nu...

氣泡排序和快排

1.氣泡排序 氣泡排序要點 1 兩層迴圈,外層迴圈控制走訪數列重複進行的次數,內層迴圈進行資料的比較 交換,是資料 上浮 2 內層迴圈是相鄰的資料進行比較。var bubblesort function arr console.log arr 1,1,2,3,4,6,7,8 bubblesort 1...

排序演算法(快排,冒泡)

排序目的 快速查詢 排序演算法優劣的判斷條件 1.時間複雜度 2.空間複雜度 3.穩定性 關鍵字值相等的數字們,排完序之後順序不變 十大排序演算法 需要掌握的的 氣泡排序 快速排序 希爾排序 折半插入排序 堆排序 氣泡排序 依次比較第i個數與第i 1個數的大小,如果符合條件則不變,如果不符合條件,兩...