插入排序
1 /* 插入排序 */ 2 3 #include<stdio.h> 4 #include<stdlib.h> 5 6 void main() 7 { 8 int a[10]={1,2,3,4,6,7,8,9,10,5}; 9 int temp=a[9];// 元素 5 10 int j=9;// 记录下标 11 12 while (j>0 && a[j-1]>temp)// a[j-1]>temp 判定循环终止的条件 确定要插入的位置 13 { 14 a[j] = a[j-1];//往前移动 15 j--; 16 } 17 18 a[j] = temp; 19 20 for (int i=0;i<10;i++) 21 { 22 printf("%d ",a[i]); 23 } 24 printf("\n"); 25 26 27 system("pause"); 28 } 29 30 //------------------------------------------------------------------- 31 32 void main() 33 { 34 int a[10]={1,5,2,4,8,7,9,10,6,3}; 35 36 for(int i=1;i<10;i++)// i=1开始 是因为只有一个不需要插入 37 { 38 int temp=a[i];// temp用来保存要插入的数 39 int j=i; 40 while (j>0 && a[j-1]>temp) 41 { 42 a[j] = a[j-1];//往后移动 43 j--; 44 } 45 a[j]=temp;// 插入数的位置 46 } 47 48 for (int i=0;i<10;i++) 49 { 50 printf("%d ",a[i]); 51 } 52 printf("\n"); 53 54 system("pause"); 55 }
长风破浪会有时,直挂云帆济沧海
posted on 2015-06-24 10:20 Dragon-wuxl 阅读(192) 评论(0) 收藏 举报
浙公网安备 33010602011771号