1. 程式人生 > >C++學習之路——直接插入排序

C++學習之路——直接插入排序

sin alt nbsp namespace ios include 數據結構 log ins

一個人獨自學習,感覺有進步就滿足,即便是數據結構沒學好,算法也找不清思路,但把人家的代碼看看理解好打出來,也挺滿意的。

 1 #include <iostream>
 2 using namespace std;
 3 void print(int a[],int length)
 4 {    
 5     cout<<length <<":";
 6     for(int j=0;j<length;j++)
 7     {
 8         cout<<a[j]<<" ";
 9     }
10 cout<<endl; 11 } 12 13 void insertSort(int arr[],int length) 14 { 15 16 for(int i=1;i<length;i++) 17 { 18 if(arr[i]<arr[i-1]) 19 { 20 int j=i-1; 21 int x=arr[i]; 22 arr[i]=arr[i-1]; 23 while(x <arr[j]){ 24
arr[j+1]=arr[j]; 25 j--; 26 27 if (j <=0){break;} 28 } 29 arr[j+1]=x; 30 } 31 print(arr,length); 32 }/*for*/ 33 } 34 35 36 int main(){ 37 int a[]={2,3,51,78,315,9,7,21,18}; 38 insertSort(a,9); 39 print(a,9
); 40 return 0; 41 42 }

技術分享

C++學習之路——直接插入排序