littlemuggle
littlemuggle
全部文章
题解
归档
标签
去牛客网
登录
/
注册
littlemuggle的博客
全部文章
/ 题解
(共14篇)
题解 | #序列化二叉树#
题目要求要用'#'代表空值 # -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.r...
Python3
二叉树
2022-05-13
0
272
题解 | #输出二叉树的右视图#
问题分解: 将先序遍历和中序遍历还原成二叉树 将二叉树进行层序遍历,每次输出最右边的节点 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # 求二叉树的右视图 # @param xianxu int整型一维数组 先序遍历 # @param zhongxu i...
Python3
二叉树
2022-05-12
0
400
题解 | #在二叉树中找到两个节点的最近公共祖先#
用递归的方法先找到o1和o2对应的路径,再寻找该路径下相同的节点,即为最近公共祖先。 代码中需要注意的点: 对于list类型的操作,注意执行完append操作之后不需要再返回list(结合其他语言对指针的理解) 二叉树深度优先搜索的实现 def lowestCommonAncestor(...
Python3
二叉树
深度优先搜索
2022-05-08
0
263
题解 | #二叉搜索树的最近公共祖先#
定义cur=root,二叉搜索树的最近公共祖先一定介于p和q之间,因此只有在cur同时大于p,q,或者同时小于p,q的时候才需要移动,否则最大祖先就是cur。 class Solution: def lowestCommonAncestor(self , root: TreeNode, p:...
Python3
二叉树
二叉搜索树
2022-05-06
0
258
题解 | #判断是不是平衡二叉树#
先审好题,要求满足两个条件: 左右两个子树的深度差不超过1 左右两个子树本身也是平衡二叉树 功能分解: 求一个二叉树的深度 判断是否为平衡二叉树,包括其左右子树是否也是平衡二叉树 可通过两个递归函数实现 class Solution: def IsBalanced_Solution...
Python3
二叉树
递归
2022-05-06
0
238
题解 | #判断是不是完全二叉树#
层序遍历的进阶版本,要考虑好各种情况,尤其在判断该层不是完全占满的各种条件。 import queue class Solution: def isCompleteTree(self , root: TreeNode) -> bool: # write code her...
Python3
二叉树
2022-05-05
0
348
题解 | #判断是不是二叉搜索树#
误区:单独判断某一个子树是否满足搜索树是不够的 class Solution: def isValidBST(self , root: TreeNode) -> bool: # write code here if not root: ...
Python3
二叉树
2022-05-04
1
446
题解 | #二叉树中和为某一值的路径(一)#
方法1.还是用递归的方法实现 方法2.二叉树的层序遍历 方法3.深度优先搜索 方法1代码: class Solution: def hasPathSum(self , root: TreeNode, sum: int) -> bool: # write code her...
Python3
二叉树
递归
2022-05-03
0
259
题解 | #二叉树的最大深度#
方法1:用递归的方法 方法2:用队列实现层序遍历,求层序遍历返回数组的值即可 class Solution: def maxDepth(self , root: TreeNode) -> int: # write code here left_max =...
Python3
二叉树
递归
2022-05-03
0
248
题解 | #按之字形顺序打印二叉树#
在层序遍历的基础上添加列表的倒置逻辑,基础还是层序遍历。 import queue class Solution: def Print(self , pRoot: TreeNode) -> List[List[int]]: # write code here ...
Python3
二叉树
堆(优先队列)
2022-05-03
0
287
首页
上一页
1
2
下一页
末页