1.冒泡排序
1 for(i=n;i>=1;--i) 2 { 3 for(j=1;j<=i;++j) 4 { 5 if(a[j]>a[j+1]) 6 { 7 swap(a[j],a[j+1]); 8 } 9 } 10 }
2.快速排序
1.懒人函数
1 sort(a+1,a+n+1);
2.正常的
1 void quick_sort(int l,int r) 2 { 3 int x=l,y=r,z=a[x]; 4 if(x>=y) return; 5 while(x<y) 6 { 7 while(x<y) 8 { 9 if(a[y--]<z) 10 { 11 a[x]=a[++y]; 12 break; 13 } 14 } 15 while(x<y) 16 { 17 if(a[x++]>z) 18 { 19 a[y]=a[--x]; 20 break; 21 } 22 } 23 } 24 a[x]=z; 25 quick_sort(l,x-1); 26 quick_sort(x+1,r); 27 }
3.选择排序
1 for(int i=1;i<n-1;++i) 2 { 3 int minn=0x7fffffff,w; 4 for(int j=i;j<=n;++j) 5 { 6 if(a[j]<minn) 7 { 8 minn=a[j]; 9 w=j; 10 } 11 } 12 swap(a[i],a[w]); 13 }
4.插入排序
1 for(int i=2;i<=n;++i) 2 { 3 int w=i; 4 for(int j=i;j>=1;--j) 5 { 6 if(a[j]>a[w]) 7 { 8 swap(a[j],a[w]); 9 w=j; 10 } 11 } 12 }
标签:sort,int,各大,--,swap,quick,排序,模板 From: https://www.cnblogs.com/cath20/p/18013340