我一直在尝试实现一个树的顺序遍历,但是,我想用队列来做(我的代码试图在树中找到第k个最大的元素,我使用队列和堆栈来执行此操作)
到目前为止,我的代码是一个前序遍历。如何使这个顺序遍历?
def kthlargest(self, root, k):
L = queue.Queue()
L.put(root)
stack = []
answ = 0
while not L.empty():
node = L.get()
if node.left:
L.put(node.left)
if node.right:
L.put(node.right)
stack.append(node.val)
for count in range(0,k):
if stack:
answ = stack.pop()
return answ