mydjm

 

2012年3月20日

递归插入排序

摘要: 1 #include<stdio.h> 2 3 4 void Insert(int *a,int n)//把数组a的第n个数插入前n-1个数中,注意前n-1个数已经是排好序的了 5 { 6 int i=n-1; 7 int key=a[n]; 8 while((i>=0)&&(key<a[i])) 9 {10 a[i+1]=a[i];11 i--;12 }13 a[i+1]=key;14 return;15 }16 17 void InsertionSort(int *a,int n)//递归插入,跟... 阅读全文

posted @ 2012-03-20 23:27 mydjm 阅读(2978) 评论(0) 推荐(0) 编辑

插入排序

摘要: 1 #include<stdio.h> 2 3 int a[10],i,j,n,key; 4 void InsertionSort(int *a,int n)//*a才对 5 { 6 for(j=1;j<n;j++) 7 { 8 key=a[j]; 9 i=j-1;10 while((i>=0)&&(key<a[i]))11 {12 a[i+1]=a[i];13 i--;14 }15 a[i+1]=key;16 }17 }1... 阅读全文

posted @ 2012-03-20 18:56 mydjm 阅读(135) 评论(0) 推荐(0) 编辑

合并排序

摘要: #include<stdio.h>#define MAX_INT 65535//哨兵void Merge(int *a,int p,int q,int r)//关键函数~ 合并{ int L[50],R[50],b[100],i,j,k; int len1=q-p+1; int len2=r-q; for(i=0;i<len1;i++) { L[i] = a[p+i]; } L[len1]=MAX_INT; //L[len1]=600; for(i=0;i<len2;i++) { R[i] = a[q+1+i]; } R[len2] = MAX_INT; //R[len 阅读全文

posted @ 2012-03-20 18:53 mydjm 阅读(186) 评论(0) 推荐(0) 编辑

导航