鸡尾酒排序

来源:互联网 发布:c抓取网页数据 编辑:程序博客网 时间:2024/05/17 06:54


把冒泡排序 换了一种情况实现,主要过程就是把最小的放到后面,然后将最大的放到前面,放过之后需要使用的数据减1,到最后没有数据可以排,就排序成功了。


#include<iostream>#include<algorithm>using namespace std;int main(){int a[]={6,5,3,1,8,7,2,4};int n=sizeof(a)/sizeof(int);int left=0;int right=n-1;while(left<right){for(int i=left;i<right;i++)if(a[i]>a[i+1])swap(a[i],a[i+1]);right--;  //后面排好了一个for(int i=right;i>left;i--)if(a[i-1]>a[i])swap(a[i],a[i-1]);left++;//前面排好了一个}for(int i=0;i<n;i++)cout<<a[i]<<" ";cout<<endl;return 0;}