class Node(object):
def __init__(self,value):
self.value=value
self.left=None
self.right=None
class Tree(object):
def __init__(self,values):
length=len(values)
node=[]
for x in range(length):
node.append(Node(values[x]))
for x in range(length):
if 2*x+1 < length:
node[x].left = node[2*x+1]
if 2*x+2 < length:
node[x].right = node[2*x+2]
if node[0] != None:
self.root = node[0]
else:
self.root = None
def DFS(self,node,obj):
if node == None or node.value == obj:
return node
else:
self.DFS(node.left,obj)
self.DFS(node.right,obj)
def main():
obj = raw_input("Please input a number you want to search: ")
tree = Tree(range(100))
node = tree.DFS(tree.root,obj)
if node.value == obj:
print "I've done it!"
if __name__ == "__main__":
main()
您好,我是新来的Python和这个平台。我想在我的python'Tree'类中实现DFS,但shell说'Tree'对象没有属性'DFS'。但是,我的代码中明确定义了DFS。谁能帮我这个?提前谢谢了!对象没有属性
非常感谢您为您的即时回答!事实证明,这样的功能,DFS实际上并没有定义为类树的方法,我崇高的文本编辑器的缩进的设置是错误的。非常感谢您的帮助!顺便说一句,如何输入类似你的代码,在评论框中有灰色背景? –
有通过SO的文档阅读: http://stackoverflow.com/help/formatting – acdr