冒泡排序的优化有设置哨兵来表示当前整个数组已经有序,以及设置有序区间,下一次只对有序区间进行排序(尚未完全理解).
鸡尾酒排序
鸡尾酒排序算法适用于大部分元素已经有序的情况.它能够在特定条件下,减少排序的回合数;但是缺点是代码量几乎扩大了一倍.
未进行优化的鸡尾酒排序
1 | void clockTailSort(vector<int> &nums) { |
进行优化的鸡尾酒排序
优化方法:
冒泡排序的优化有设置哨兵来表示当前整个数组已经有序,以及设置有序区间,下一次只对有序区间进行排序(尚未完全理解).
鸡尾酒排序算法适用于大部分元素已经有序的情况.它能够在特定条件下,减少排序的回合数;但是缺点是代码量几乎扩大了一倍.
未进行优化的鸡尾酒排序
1 | void clockTailSort(vector<int> &nums) { |
进行优化的鸡尾酒排序
优化方法: