归并排序python实现源码
2024-09-01 07:38:25
将开发过程经常用到的一些代码片段收藏起来,下面的资料是关于归并排序python实现的代码,应该能对码农们有一些用。
def mergesort(arr):
if len(arr) == 1:
return arr
m = len(arr) / 2
l = mergesort(arr[:m])
r = mergesort(arr[m:])
if not len(l) or not len(r):
return l or r
result = []
i = j = 0
while (len(result) < len(r)+len(l)):
if l[i] < r[j]:
result.append(l[i])
i += 1
else:
result.append(r[j])
j += 1
if i == len(l) or j == len(r):
result.extend(l[i:] or r[j:])
break
return result
最新文章
- Delaunay剖分与平面欧几里得距离最小生成树
- JavaScript基础—插曲02
- EDW on Hadoop(Hadoop上的数据仓库)技术选型和实践思考
- 何时使用Swift Structs和Classes
- 设计模式 --- 模型-视图-控制器(Model View Controller)
- 【POJ 1260】Pearls
- 【设计模式】装饰者模式(Decorator)
- u-boot board_uart_init流程
- cocos2d-x lua 使用自定义消息EventCustom
- 在Visual Studio 2010中使用DSL Tool特定领域开发 开篇
- bzoj 2152: 聪聪可可 树的点分治
- hdu 6121---Build a tree(深搜+思维)
- bootstrap fileinput上传返回400,404,500 等错误替换
- 【BZOJ4916】神犇和蒟蒻(杜教筛)
- [HNOI 2016]树
- python --- 二分查找算法
- sqlite3数据库教程
- Python校验文件MD5值
- DOIS 2018 — OneAPM 蓝海讯通以数据为中心的 AIOps 平台亮相
- Shell基础 - Bash基础功能