//直接插入排序 #include<iostream> using namespace std; const int MAX = 1001; int l[MAX]; void InsertSort(int n) { int j; for(int i=2;i<=n;i++) if(l[i]<l[i-1]) { l[0]=l[i]; l[i]=l[i-1]; for(j=i-2;l[0]<l[j];j--) l[j+1]=l[j]; l[j+1]=l[0]; } } int main() { int n; cin>>n; for(int i=1;i<=n;i++) cin>>l[i]; InsertSort(n); for(int i=1;i<=n;i++) cout<<l[i]<<" "; cout<<endl; return 0; }
原文:http://www.cnblogs.com/KennyRom/p/6251083.html