博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 实现排序算法(二)-合并排序(递归法)
阅读量:5049 次
发布时间:2019-06-12

本文共 1448 字,大约阅读时间需要 4 分钟。

1 #!/usr/bin/env python2 2 # -*- coding: utf-8 -*- 3 """ 4 Created on Tue Nov 21 22:28:09 2017 5  6 @author: livermorium116 7 """ 8  9 10 11 12 import random13 14 class MergeSortedByCur():15     def __init__(self, data):16         self.data = data17         #print("ORIGIN DATA:",  self.data)18         self.CountCur=019         self.Results=self.MergeSort(self.data)20     def MergeSort(self,data):21 22         if len(data) <= 1:23                 return data24         num = int(len(data)/2)25         Left = self.MergeSort(data[:num])26         Right = self.MergeSort(data[num:])27         #print("LEFT:",Left,"RIGHT:",Right)28         self.CountCur += 129         #print ("%d Cursions:"%(self.CountCur))30         return self.Merge(Left, Right)31 32 33     def Merge(self,left, right):34         R, L = 0, 035         result = []36         while L < len(left ) and R < len(right ):37             if left[L] < right[R]:38                 result.append(left[L])39                 L += 140             else:41                 result.append(right[R])42                 R += 143         result.extend(left[L:])44         result.extend(right[R:])45         #print("MergeSorted DATA:",result)46         return result47  48 49 50         51 52  53 54 55 if __name__ == "__main__":56     data = [random.randint(1,100) for i in range(13)]57     print(data)58     print MergeSortedByCur(data).Results59

 

转载于:https://www.cnblogs.com/milliard/p/7875881.html

你可能感兴趣的文章
UI_搭建MVC
查看>>
一个样例看清楚JQuery子元素选择器children()和find()的差别
查看>>
代码实现导航栏分割线
查看>>
Windows Phone开发(7):当好总舵主 转:http://blog.csdn.net/tcjiaan/article/details/7281421...
查看>>
VS 2010打开设计器出现错误
查看>>
SQLServer 镜像功能完全实现
查看>>
Vue-详解设置路由导航的两种方法
查看>>
一个mysql主从复制的配置案例
查看>>
大数据学习系列(8)-- WordCount+Block+Split+Shuffle+Map+Reduce技术详解
查看>>
dvwa网络渗透测试环境的搭建
查看>>
Win8 安装VS2012 和 Sql Server失败问题
查看>>
过点(2,4)作一直线在第一象限与两轴围成三角形,问三角形面积的最小值?...
查看>>
java aes CBC的填充方式发现
查看>>
使用ionic cordova build android --release --prod命令打包报有如下错误及解决方法
查看>>
BZOJ 2338 HNOI2011 数矩形 计算几何
查看>>
关于页面<!DOCTYPE>声明
查看>>
【AS3代码】播放FLV视频流的三步骤!
查看>>
C++标准库vector使用(更新中...)
查看>>
cocos2d-x 2.2.6 之 .xml文件数据读取
查看>>
枚举的使用
查看>>