我想返回二進制樹中的值列表。 有沒有一種更短,更有效的方法來編寫數字的方法?有沒有更簡單的方法來編寫這段代碼?
謝謝。
class BTNode(object):
"""A node in a binary tree."""
def __init__(self, item, left=None, right=None):
"""(BTNode, object, BTNode, BTNode) -> NoneType
Initialize this node to store item and have children left and right,
as well as depth 0.
"""
self.item = item
self.left = left
self.right = right
self.depth = 0 # the depth of this node in a tree
def number(self) -> list:
lst = []
if self.right is None and self.left is None:
lst.append(self.item)
else:
lst.append(self.item)
if self.left:
left = self.left.number()
lst.extend(left)
if self.right:
right = self.right.number()
lst.extend(right)
return lst
這是什麼語言? – Ergin
看起來像蟒蛇。你真的需要def數中的第一個if語句嗎?當時和其他部分看起來都一樣。 – cup
爲什麼不嘗試http://codegolf.stackexchange.com/或http://codereview.stackexchange.com/?這個問題似乎更適合那些網站。 – istovatis