冒泡排序優化以及插入排序(本文凝視較少適合有一定基礎的觀看)
阿新 • • 發佈:2017-06-28
插入排序 pre amp 是否 get sort i+1 art etc
#include<stdio.h> #define cnt 6 //定義排序個數 //冒泡排序優化 void Bubble_Sort(int A[],int N) { for(int P = N - 1; P >= 0;P--) { int flag = 0; //定義一個flag推斷之後的序列是否有序 for(int i = 0;i < P;i++) //一趟冒泡 { if(A[i] > A[i+1]) //一次一次的冒泡 { int temp = A[i+1]; A[i+1] = A[i]; A[i] = temp; } flag = 1; } if(flag == 1) //說明之後的序列以及有序不用在排 break; } } //插入排序 void Insertion_Sort(int A[],int N) { for(int P = 1;P < N;P++) //初始數字 把P【0】當成基本數字 然後進行插入N張牌 for循環運行順序先運行1 然後推斷是否滿足條件 { int Tmp = A[P]; //存放須要插入的數字 int i; //記錄移動位置 for(i = P;i>0&&A[i-1]>Tmp;i--) //對須要插入的數進行移動 { A[i] = A[i-1]; } A[i] = Tmp; } } int main() { int a[cnt] = {5,7,4,1,9,6}; Insertion_Sort(a,cnt); for(int i=0;i< cnt;i++) { printf("%d ",a[i]); } getchar(); }
冒泡排序優化以及插入排序(本文凝視較少適合有一定基礎的觀看)