鸡尾酒排序c++实现

算法 admin 159℃ 0评论
#include<iostream>
#include<cstdio>
 
using namespace std;
 
int n,s[5] = {1, 3, 4, 5, 2};
 
void Cocktailsort()
{
    int left=0;
    int right=n-1;
    while(left<right){
        //前半轮,将最大元素放到后面
        for(int i=left;i<right;i++){
            if(s[i]>s[i+1]){
                swap(s[i],s[i+1]);
            }
        }
        right--;
        //后半轮,将最小元素放到前面
        for(int i=right;i>left;i--){
            if(s[i]<s[i-1]){
                swap(s[i],s[i-1]);
            }
        }
        left++;
    }
}
 
int main()
{
    n = 5;
    
    Cocktailsort();
    for(int i=0;i<n;i++){
        printf("%d ",s[i]);
    }
    cout<<endl;
    return 0;
}

 

转载请注明:朋克网 » 鸡尾酒排序c++实现

喜欢 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址