【Python】用python实现归并排序算法
2018-03-18 10:35
507 查看
先放上代码,有空再整理思路
def merge(left,right): temp_ans=[] # temp_index=0 i,j=0,0 while i<len(left) and j<len(right): if(left[i]<right[j]): temp_ans.append(left[i]) i+=1 else: temp_ans.append(right[j]) j+=1 # temp_index+=1 if(i>=len(left)): temp_ans.extend(right[j:]) if(j>=len(right)): temp_ans.extend(left[i:]) temp_ans return temp_ans def merge_sort(alist): if(len(alist)<=1): return alist else: low=0 high=len(alist) print(alist) mid=(low+high)//2 l=alist[low:mid] r=alist[mid:high] left=merge_sort(l) right=merge_sort(r) return merge(left,right) alist=[69,3,2,45,67,3,2,4,45,63,24,233] print(merge_sort(alist))
相关文章推荐
- python 实现归并排序算法
- python实现归并排序算法
- python实现归并排序算法
- 排序算法集合(4)- Python实现的N路归并排序算法
- python实现折半查找算法&&归并排序算法
- 归并排序算法-python实现
- 排序算法—归并排序算法分析与实现(Python)
- python 实现归并排序算法
- python实现折半查找和归并排序算法
- Python3.x实现网页登录表单提交功能
- 算法基础:排序(一)——选择排序、插入排序、Shell排序——Python实现
- Python实现简单的HTTP服务器
- Python_实现ftp上传和下载
- Python 实现99乘法表
- Python单例模式的4种实现方法
- Python实现将不规范的英文名字首字母大写
- 机器学习实战笔记(Python实现)-06-AdaBoost
- Python实现__metaclass__实现方法运行时间统计
- python3实现简单汉诺塔
- Python递归实现汉诺塔详细解析