码迷,mamicode.com
首页 > 编程语言 > 详细

算法----(2)鸡尾酒排序

时间:2018-07-21 21:32:29      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:main   __name__   一点   ima   lag   图片   range   bubuko   python   

鸡尾酒排序,也叫定向冒泡排序,是冒泡排序的一种改进。此算法与冒泡排序的不同处在于从低到高然后从高到低,而冒泡排序则仅从低到高去比较序列里的每个元素。他可以得到比冒泡排序稍微好一点的效能。

技术分享图片

python代码:

 

 1 def bubble_sort_pro(num_array):
 2     flag = True
 3     for i in range(len(num_array)//2):
 4         if flag:
 5             flag = False
 6             #将最大值排到队尾
 7             for j in range(i, len(num_array)-i-1):
 8                 if num_array[j]>num_array[j+1]:
 9                     num_array[j], num_array[j+1] = num_array[j+1], num_array[j]
10                     flag = True
11             #将最小值排到队首
12             for j in range(len(num_array)-1-i, i, -1):
13                 if num_array[j] < num_array[j-1]:
14                     num_array[j], num_array[j-1] = num_array[j-1], num_array[j]
15                     flag = True
16         else:
17             break
18 
19 
20 def main():
21     a = [6, 5, 3, 1, 8, 7, 2, 4]
22 
23     bubble_sort_pro(a)
24     for i in range(len(a)):
25         print(a[i])
26 
27 
28 if __name__ == __main__:
29     main()

 

算法----(2)鸡尾酒排序

标签:main   __name__   一点   ima   lag   图片   range   bubuko   python   

原文地址:https://www.cnblogs.com/MC-Curry/p/9347944.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!