题目:原题链接(中等)

标签:设计、树、二叉树、深度优先搜索

解法 时间复杂度 空间复杂度 执行用时
Ans 1 (Python) O ( N ) O(N) O(N) O ( N ) O(N) O(N) 40ms (75.00%)
Ans 2 (Python)
Ans 3 (Python)

解法一:

from abc import ABCclass Node(ABC):def __init__(self, val, left=None, right=None):self.val = valself.left = leftself.right = rightdef evaluate(self) -> int:if not self.left and not self.right:return self.valelse:mark = self.valleft_val = self.left.evaluate()right_val = self.right.evaluate()if mark == "+":return left_val + right_valelif mark == "-":return left_val - right_valelif mark == "*":return left_val * right_valelse:return int(left_val / right_val)def gatherAttrs(self):return ", ".join("{}: {}".format(k, getattr(self, k)) for k in self.__dict__.keys())def __str__(self):return self.__class__.__name__ + "{" + "{}".format(self.gatherAttrs()) + "}"class TreeBuilder(object):def buildTree(self, postfix: List[str]) -> 'Node':stack = []for t in postfix:if t.isnumeric():stack.append(Node(int(t)))else:right = stack.pop()left = stack.pop()stack.append(Node(t, left, right))return stack.pop()

LeetCode题解(1628):设计带解析函数的表达式树(Python)相关推荐

  1. LeetCode题解(1425):带限制的子序列和(Python)

    题目:原题链接(困难) 标签:动态规划.贪心算法.有序映射 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O(NlogK)O(NlogK)O(NlogK) O(N)O(N)O( ...

  2. LeetCode题解(0594):计算最长和谐子序列(Python)

    题目:原题链接(简单) 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O(N)O(N)O(N) O(N)O(N)O(N) 368ms (91.63%) Ans 2 (Pytho ...

  3. [转载] LeetCode题解(面试16.22):兰顿蚂蚁(Python)

    参考链接: Python | 兰顿的蚂蚁 题目:原题链接(中等) 标签:数组 解法时间复杂度空间复杂度执行用时Ans 1 (Python) O ( K ) O(K) O(K) O ( K ) O(K) ...

  4. LeetCode题解(1383):最大的团队表现值(Python)

    题目:原题链接(困难) 标签:贪心算法.排序.堆 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O(NlogN)O(NlogN)O(NlogN) O(N)O(N)O(N) 28 ...

  5. LeetCode题解(面试10.11):峰与谷(Python)

    题目:原题链接(中等) 标签:数组.数学 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O(N)O(N)O(N) O(1)O(1)O(1) 48ms (73.43%) Ans ...

  6. LeetCode题解(1533):找到最大整数的索引(Python)

    题目:原题链接(中等) 标签:二分查找 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O(logN)O(logN)O(logN) O(1)O(1)O(1) 236ms (100 ...

  7. LeetCode题解(1000):合并石头的最低成本(Python)

    题目:原题链接(困难) 标签:动态规划 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O ( N 4 ) O(N^4) O(N4) O ( N 3 ) O(N^3) O(N3) ...

  8. LeetCode 538. 把二叉搜索树转换为累加树 | Python

    538. 把二叉搜索树转换为累加树 题目来源:力扣(LeetCode)https://leetcode-cn.com/problems/convert-bst-to-greater-tree 题目 给 ...

  9. 干货!表达式树解析框架(3)

    最新设计请移步 轻量级表达式树解析框架Faller http://www.cnblogs.com/blqw/p/Faller.html 这应该是年前最后一篇了,接下来的时间就要陪陪老婆孩子了 关于表达 ...

最新文章

  1. 【移动通信】WIFI6 技术参数
  2. 红包实名的背后,支付实名制如何影响产品设计?
  3. 您拒绝了位置共享服务器,共享服务器拒绝访问
  4. VTK计算网格模型上的最短路径
  5. 素数环(dfsamp;amp;STL做法)HDU - 1016
  6. 【LeetCode笔记】72. 编辑距离(Java、字符串、动态规划)
  7. php分解质因数,用PHP如何实现将一个整数分解为质因数的积?
  8. 实战系列-Java中线程安全集合类(二)
  9. 服务的心跳机制与断线重连,Netty底层是怎么实现的?
  10. python程序设计是干什么的_python程序员有学设计模式的必要吗?
  11. SpringBoot项目引入前端模板时,CSS、JS、HTML文件无法加载的问题
  12. springcloud ip部署_php接入SpringCloud微服务框架
  13. 分别用switch语句和if语句实现键盘录入月份,输出对应的季节
  14. 微信开放平台、公众平台的区别
  15. 字符串要求字母、数字、特殊字符,至少有两项。正则表达式不好写,可以用这个方法实现。
  16. 键盘输入一个长方形的两个边长,输出该长方形的周长、面积和对角线。要用到Math类提供的数学方法。
  17. 外设驱动库开发笔记47:ADS111x系列ADC驱动
  18. 钉钉邮箱登录入口_阿里企业邮箱发信失败 报错:554reject by content_「阿里云企业邮箱_阿里企业邮箱」指定经销商热线:400-855...
  19. Phython基础语法知识点汇集
  20. 用类模板实现容器存储自定义数据类型(类似于STL里面的vector)

热门文章

  1. 得了胆囊息肉对人体的危害大不大?
  2. R语言查看对象的结构:class函数、mode函数、str函数、names函数
  3. 百度回应文心一言文生图功能争议
  4. txt文件中生成立体字或图案网站
  5. 怎么在多层循环中直接跳出循环
  6. idea maven parent飘红
  7. 基于51单片机温度火灾烟雾报警器
  8. 已成功拿下字节、腾讯、脉脉offer,这原因我服了
  9. 解决键盘模式(布局)的错误导致的部分键位失灵或异常(姑且这样描述问题吧)
  10. pdf根据书签创建目录结构(方便查看各个主题的页码分布)pdf_xchange