作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我写了这样一个解决方案给Binary Tree Inorder Traversal - LeetCode
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def inorderTraversal(self, root: "TreeNode") -> "List[int]":
stack, res = [root], []
while stack:
cur = stack[-1]
cur = cur.left
if cur == None:
cur = stack.pop()
res.append(cur.val)
cur = cur.right
else:
stack.append(cur)
cur = cur.left
return res
但没有按预期工作
Finished
Runtime: 48 ms
Your input [1,null,2,3]
Output [1]
Expected [1,3,2]
我的解决方案有什么问题?
最佳答案
您的解决方案存在的问题是:
修复您的解决方案:
另一种方法,如果你不能破坏树:
类解决方案:
def inorderTraversal(self, root: "TreeNode") -> "List[int]":
stack, res = [root], []
cur = stack[-1]
while cur.left != None:
stack.append(cur.left)
cur = cur.left
while stack:
cur = stack.pop()
res.append(cur.val)
if cur.right != None:
stack.append(cur.right)
cur = cur.right
while cur.left != None:
stack.append(cur.left)
cur = cur.left
return res
关于python - 二叉树中序遍历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56899309/
序 大家好呀,我是summo,这次来写写我在上班空闲(摸鱼)的时候做的一个小网站的事。去年阿里云不是推出了个活动嘛,2核2G的云服务器一年只要99块钱,懂行的人应该知道这个价格在业界已经是非常良心了
我尝试根据给定的级别顺序(BFS 顺序)构造 BST。我知道这是可能的,但我不知道我该怎么写。问题是我必须使用 BFS 序列。所以,我不能在这里使用递归,我必须迭代地编写我的程序......我发现这有
我是一名优秀的程序员,十分优秀!