gpt4 book ai didi

Python实现的归并排序算法示例

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Python实现的归并排序算法示例由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

本文实例讲述了Python实现的归并排序算法。分享给大家供大家参考,具体如下:

归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用.

将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并.

Python实现代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#-*- coding: UTF-8 -*-
import numpy as np
def Merge(a, f, m, l):
   i = f
   j = m + 1
   tmp = []
   while i < = m and j < = l:
     if a[i] < = a[j]:
       tmp.append(a[i])
       i + = 1
     else :
       tmp.append(a[j])
       j + = 1
   while i < = m:
     tmp.append(a[i])
     i + = 1
   while j< = l:
     tmp.append(a[j])
     j + = 1
   i = f
   for x in xrange ( 0 , len (tmp)):
     a[i] = tmp[x]
     i + = 1
def MergeSort(a, f, l):
   if f< l:
     m = (l + f) / 2
     MergeSort(a, f, m)
     MergeSort(a, m + 1 , l)
     Merge(a, f, m, l)
if __name__ = = '__main__' :
   a = np.random.randint( 0 , 10 , size = 10 )
   print "Before sorting..."
   print "---------------------------------------------------------------"
   print a
   print "---------------------------------------------------------------"
   MergeSort(a, 0 , a.size - 1 )
   print "After sorting..."
   print "---------------------------------------------------------------"
   print a
   print "---------------------------------------------------------------"

运行结果:

Python实现的归并排序算法示例

希望本文所述对大家Python程序设计有所帮助.

原文链接:http://www.cnblogs.com/biaoyu/p/4831644.html 。

最后此篇关于Python实现的归并排序算法示例的文章就讲到这里了,如果你想了解更多关于Python实现的归并排序算法示例的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com