本文实例讲述了Python实现的插入排序,冒泡排序,快速排序,选择排序算法。分享给大家供大家参考,具体如下:
创新互联公司是专业的鄂托克前网站建设公司,鄂托克前接单;提供网站设计、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行鄂托克前网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!#!/usr/bin/python # coding:utf-8 #直接插入排序 def insert_sort(list): for i in range(len(list)): Key = list [i] #待插入元素 j = i - 1 while(Key < list[j] and j >= 0): list[j+1] = list[j] #后移元素 list[j] = Key j=j-1 return list #冒泡排序 def bubble_sort(list): for i in range(1, len(list)): for j in range(len(list)-i): if list[j] > list [j+1]: list[j+1],list[j] =list[j],list[j+1] return list #快速排序 def position_key(list, low, high): i = low j = high key = list[low] while(i < j): while(i < j and list[j] >= key): #从右向左,寻找第一个小于基准元素的数据索引。 注意:i<y 的判断,内循环更新j j -= 1 if i < j : list[i] = list[j] while(i<j and list[i] <= key): #从左向右,寻找地一个大于基准元素的数据索引。i<y同上 i += 1 if i < j: list[j] = list[i] list[j] = key # 基准元素位置 return j def quick_sort(list, low, high): if low < high: position = position_key(list, low, high) #将数据分成前后两个子序列(前边序列值均小于后边序列) quick_sort(list, low, position-1) #将前面的序列快速排序 quick_sort(list, position+1, high) #将后面的序列快速排序 return list #选择排序 def select_sort(list): for i in range(len(list)): for j in range(i, len(list)): if list[i] > list[j]: list[i], list[j] = list[j], list[i] return list list = [23, 232, 11, 89,121, 64, 34, 12, 23423, 2312, 167, 768, 932, 346, 32789, 335, 2, 1145, 34, 56, 99, 111] print '原始序列 :', list print '直接插入排序:', insert_sort(list) print '冒泡排序 :', bubble_sort(list) print '快速排序 :', quick_sort(list, 0, len(list)-1) print '选择排序 :', select_sort(list)
新闻名称:Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例-创新互联
URL链接:/article8/doosop.html
成都网站建设公司_创新互联,为您提供品牌网站设计、手机网站建设、App开发、网站导航、网站营销、网站设计公司
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联