首页 > 编程语言 > 详细

Python Algorithms – chapter3 计数初步

时间:2018-02-12 14:23:18      阅读:222      评论:0      收藏:0      [点我收藏+]


一些基本递归式的解决方案及其应用实例

技术分享图片

主定理的三种情况

技术分享图片

排序算法之侏儒排序法

def gnomesort(seq):
    i = 0
    while i < len(seq):
        if i == 0 or seq[i-1] <= seq[i]:
            i += 1
        else:
            seq[i], seq[i-1] = seq[i-1], seq[i]
            i -= 1

排序算法之归并排序法

def mergesort(seq):
    mid = len(seq)/2
    lft, rgt = seq[:mid], seq[mid:]
    if len(lft) > 1: lft = mergesort(lft)
    if len(rgt) > 1: rgt = mergesort(rgt)
    res = []
    while lft and rgt:
        if lft[-1] >= rgt[-1]:
            res.append(lft.pop())
        else:
            res.append(rgt.pop())
        res.reverse()
        return (lft or rgt) + res

Python Algorithms – chapter3 计数初步

原文:https://www.cnblogs.com/huangqiancun/p/8444268.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!