博客
关于我
【python刷题】分治法
阅读量:474 次
发布时间:2019-03-06

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

归并排序

def merge(le, ri):    res = []    i = j = 0    while i < len(le) and j < len(ri):        if le[i] < ri[j]:            res.append(le[i])            i += 1        else:            res.append(ri[j])            j += 1    res = res + le[i:] + ri[j:]    return resdef mergeSort(nums):    if len(nums) <= 1:        return nums    mid = len(nums) // 2    left = mergeSort(nums[:mid])    right = mergeSort(nums[mid:])    res = merge(left, right)    return resnums = [6,2,1,5,4,3,2,2,7]res = mergeSort(nums)print(res)

leetcode 241 为运算表达式设计优先级

class Solution:    def diffWaysToCompute(self, input: str) -> List[int]:        res = []        n = len(input)        for i in range(n):            c = input[i]            if c == '+' or c == '-' or c == '*':                left = self.diffWaysToCompute(input[:i])                right = self.diffWaysToCompute(input[i+1:])                for a in left:                    for b in right:                        if c == '+':                            res.append(a + b)                        elif c == '-':                            res.append(a - b)                        elif c == '*':                            res.append(a * b)        if len(res) == 0:            res.append(int(input))        return res

转载地址:http://wfpbz.baihongyu.com/

你可能感兴趣的文章
NAT-DDNS内网穿透技术,快解析DDNS的优势
查看>>
NAT-DDNS内网穿透技术,快解析DDNS的优势
查看>>
NAT-DDNS内网穿透技术,解决动态域名解析难题
查看>>
natapp搭建外网服务器
查看>>
NativePHP:使用PHP构建跨平台桌面应用的新框架
查看>>
nativescript(angular2)——ListView组件
查看>>
NativeWindow_01
查看>>
Native方式运行Fabric(非Docker方式)
查看>>
Nature | 电子学“超构器件”, 从零基础到精通,收藏这篇就够了!
查看>>
Nature和Science同时报道,新疆出土四千年前遗骸完成DNA测序,证实并非移民而是土著...
查看>>
Nature封面:只低一毫米,时间也会变慢!叶军团队首次在毫米尺度验证广义相对论...
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
nat打洞原理和实现
查看>>
NAT技术
查看>>
NAT模式/路由模式/全路由模式 (转)
查看>>
NAT模式下虚拟机centOs和主机ping不通解决方法
查看>>
NAT的两种模式SNAT和DNAT,到底有啥区别?
查看>>
NAT的全然分析及其UDP穿透的全然解决方式
查看>>
NAT类型与NAT模型详解
查看>>