python快速查找算法应用实例
更新时间:2014年09月26日 10:41:35 投稿:shichen2014
这篇文章主要介绍了python快速查找算法,是一个比较经典的算法应用,有一定的借鉴价值,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud)
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun)
本文实例讲述了Python快速查找算法的应用,分享给大家供大家参考。
具体实现方法如下:
import random def partition(list_object,start,end): random_choice = start #random.choice(range(start,end+1)) #把这里的start改成random()效率会更高些 x = list_object[random_choice] i = start j = end while True: while list_object[i] < x and i < end: i += 1 while list_object[j] > x: j -= 1 if i >= j: break list_object[i],list_object[j] = list_object[j],list_object[i] print list_object #list_object[random_choice] = list_object[j] #list_object[j] = random_choice return j def quick_sort(list_object,start,end): if start < end: temp = partition(list_object,start,end) quick_sort(list_object,start,temp-1) quick_sort(list_object,temp + 1 ,end) a_list = [69,65,90,37,92,6,28,54] quick_sort(a_list,0,7) print a_list
程序测试环境为Python2.7.6
输出结果如下:
[54, 65, 28, 37, 6, 69, 92, 90] [6, 37, 28, 54, 65, 69, 92, 90] [6, 37, 28, 54, 65, 69, 92, 90] [6, 28, 37, 54, 65, 69, 92, 90] [6, 28, 37, 54, 65, 69, 90, 92] [6, 28, 37, 54, 65, 69, 90, 92]
希望本文所述对大家的Python程序设计有所帮助。
相关文章
keras和tensorflow使用fit_generator 批次训练操作
这篇文章主要介绍了keras和tensorflow使用fit_generator 批次训练操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-07-07python gensim使用word2vec词向量处理中文语料的方法
这篇文章主要介绍了python gensim使用word2vec词向量处理中文语料的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-07-07
最新评论