Python三大排序算法实现
2018-04-02 18:50
309 查看
import random #冒泡排序 def bub_sort(s_list): for i in range(len(s_list)-1): # 优化冒泡排序 is_change = True for j in range(len(s_list)-1-i): if s_list[j] > s_list[j+1]: s_list[j],s_list[j+1] = s_list[j+1],s_list[j] is_change = False if is_change: break return s_list #选择排序 def select_sort(s_list): for i in range(len(s_list)): min_index = i # 优化选择排序 is_change = True for j in range(i+1,len(s_list)): if s_list[i] > s_list[j]: min_index = j is_change = False if is_change: break s_list[i],s_list[min_index] = s_list[min_index],s_list[i] return s_list #插入排序 def insert_sort(s_list): for i in range(1,len(s_list)): tmp = s_list[i] j = i -1 #前一个元素的下标,进行标记 while j >= 0: if s_list[j] > tmp: s_list[j+1] = s_list[j] s_list[j] = tmp j -= 1 return s_list data = list(range(101)) # 打乱这个列表 random.shuffle(data) print insert_sort(data)
相关文章推荐
- android 使用OkHttp上传多张图片的实现代码
- Discuz板块横排显示图片的实现方法
- opencv例2.3实现视频播放(带滚动条)
- 使用API自己实现Crash时Dump
- linux shell实现URL 编码/解码
- JSP使用URLRewirte实现url地址伪静态化
- 创建动态DEEP STRUCTURE实现控制单元格可编辑,单元格颜色,行颜色
- 简单的验证码实现
- 不到30行JS代码实现的Excel表格
- python实现批量文件内容替换
- 【原创】 PostgreSQL 实现MySQL 的auto_increment 字段
- iOS searchbar实现汉字更具拼音首字母排序
- 游戏地图编辑器,JAVA版简单实现
- ZOJ 2165题解此题不算难可是有一些细节需注意,很容易出错。总归就是BFS加队列,用STL实现较方便
- [C++]MYSQL 数据库操作封装及连接池实现
- JSP实用教程之简易文件上传组件的实现方法(附源码)
- Linux内核设计与实现总结。
- GANs实现(Generative Adversarial Networks)
- 底层实现-SDS 简单动态字符串
- AWS S3 c代码实现 文件上传