关于排序的总结

/*
归纳几种常见的排序算法,方便以后复习使用,先写两种,以后学了在慢慢加上
*/
//一,冒泡排序,最简单的排序方法
/*
#include<iostream>
using namespace std;
int main()
{
 int const N=100;
 int a[N]={0};
 int i,j,k,n;
 cout<<"input data number and data\n";
 cin>>n;
 for(i=0;i<n;i++)
  cin>>a[i];
 for(i=0;i<n;i++)
  cout<<a[i]<<" ";
 cout<<"\n";
 for(i=0;i<n-1;i++)
  for(j=n-1;j>i;j--)
   if(a[j]<a[j-1])
   {
    k=a[j-1];
    a[j-1]=a[j];
    a[j]=k;
   };
 for(i=0;i<n;i++)
  cout<<a[i]<<" ";
 cout<<"\n";
 return 0;
}

//二,选择排序法
#include<iostream>
using namespace std;
int main()
{
 int const N=100;
 int a[N]={0};
 int i,j,k,n,m;
 cout<<"input data number and data\n";
 cin>>n;
 for(i=0;i<n;i++)
  cin>>a[i];
 for(i=0;i<n;i++)
  cout<<a[i]<<" ";
 cout<<"\n";

 for(i=0;i<n-1;i++)
 {
  k=i;
  for(j=i+1;j<n;j++)
   if(a[j]<a[i])
    k=j;
  if(k!=i)
  {
   m=a[i];
   a[i]=a[k];
   a[k]=m;
  }

 }
 for(i=0;i<n;i++)
  cout<<a[i]<<" ";
 cout<<"\n";
 return 0;
}
*/

posted @ 2016-03-11 21:41  左岸繁华右岸殇  阅读(141)  评论(0编辑  收藏  举报