冒泡排序的改进-鸡尾酒排序

Posted 绿水白川

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了冒泡排序的改进-鸡尾酒排序相关的知识,希望对你有一定的参考价值。

#include <iostream>
using namespace std;

void Cocktail(int *arr, int size){
    int tail = size - 1;
    for(int i = 0; i < tail;){
        for(int j = tail; j > i; j--){
            if(arr[j] < arr[j-1]){
                int temp = arr[j];
                arr[j] = arr[j-1];
                arr[j-1] = temp;
            }
        }
        ++i;
        for(int j = i; j < tail; j++){
            if(arr[j] > arr[j+1]){
                int temp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = temp;
            }
        }
        --tail;
    }
    for(int i = 0; i < size; i++)
        cout << arr[i] << \t;
        cout << endl;
}

int main(){
    int arr[] = {1,4,5,56,5,6,14,98,9,5,233,32,6,48,8,98,95,5,35,2,3};
    Cocktail(arr, sizeof(arr)/sizeof(int));
    return 0;
}

 

以上是关于冒泡排序的改进-鸡尾酒排序的主要内容,如果未能解决你的问题,请参考以下文章

算法----鸡尾酒排序

冒泡排序和快速排序的比较

python代码实现鸡尾酒排序(双向冒泡排序)

排序2-冒泡排序

冒泡排序和鸡尾酒排序的代码分析

冒泡排序和鸡尾酒排序(code)