python 实现归并排序算法

 更新时间:2012年06月05日 23:41:39   作者:  
python 实现归并排序算法代码,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

理论不多说:
复制代码 代码如下:

#!/usr/bin/python
import sys

def merge(array, q, p, r):
left_array = array[q:p+1]
right_array = array[p+1:r+1]

left_array_num = len(left_array)
right_array_num = len(right_array)

i, j , k= [0, 0, q]
while i < left_array_num and j < right_array_num:
if (left_array[i] < right_array[j]):
array[k] = left_array[i]
i+=1
else:
array[k] = right_array[j]
j+=1
k+=1

while i < left_array_num:
array[k] = left_array[i];
k+=1
i+=1

while j < right_array_num:
array[k] = right_array[j]
k+=1
j+=1

def merge_sort(array, q, r):
if q < r:
p = (q + r) / 2
merge_sort(array, q, p)
merge_sort(array, p + 1, r)
merge(array, q, p, r)

if __name__ == "__main__":
array = [2, 45, 5, 7, 34, 456, 345, 89, 8, 1, 341, 4, 98, 67]
merge_sort(array, 0, len(array) - 1)

for a in array:
sys.stdout.write("%d " % a)

相关文章

  • 2行Python实现给图片加水印效果

    2行Python实现给图片加水印效果

    这篇文章主要给大家介绍了如何通过2行Python实现给图片加水印效果的相关资料,实现的方法主要是利用filestools库,文中还介绍了一行代码如何给图片加水印,需要的朋友可以参考下
    2021-10-10
  • Python中经常使用的代码片段

    Python中经常使用的代码片段

    大家好,本篇文章主要讲的是Python中经常使用的代码片段,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • python使用tkinter库实现五子棋游戏

    python使用tkinter库实现五子棋游戏

    这篇文章主要为大家详细介绍了python使用tkinter库实现五子棋游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • Django rest framework如何自定义用户表

    Django rest framework如何自定义用户表

    Django 默认的用户表很多时候这些基本字段不够用,本文介绍在 DRF上使用自定义用户表进行接口访问控制的功能设计。感兴趣的可以了解一下
    2021-06-06
  • 介绍一款python类型检查工具pyright(推荐)

    介绍一款python类型检查工具pyright(推荐)

    这篇文章主要介绍了介绍一款python类型检查工具pyright(推荐),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python简易版图书管理系统

    Python简易版图书管理系统

    这篇文章主要为大家详细介绍了Python如何实现简易版图书管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • Python爬虫基本库request的基本使用

    Python爬虫基本库request的基本使用

    这篇文章主要介绍了Python爬虫基本库request的基本使用,urllib库使用繁琐,比如处理网页验证和Cookies时,需要编写Opener和Handler来处理。为了更加方便的实现这些操作,就有了更为强大的requests库,需要的朋友可以参考下
    2023-07-07
  • python将处理好的图像保存到指定目录下的方法

    python将处理好的图像保存到指定目录下的方法

    今天小编就为大家分享一篇python将处理好的图像保存到指定目录下的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python合并两个字典的方法总结

    python合并两个字典的方法总结

    在Python中,有多种方法可以通过使用各种函数和构造函数来合并字典,在本文中,我们将讨论一些合并字典的方法,有需要的小伙伴可以参考一下·
    2023-09-09
  • 利用python在excel里面直接使用sql函数的方法

    利用python在excel里面直接使用sql函数的方法

    今天小编就为大家分享一篇利用python在excel里面直接使用sql函数的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02

最新评论

?


http://www.vxiaotou.com