总是返回一个没有值的值
问题描述:
我试图制作这个二叉搜索树并且正在定义它的递归获取函数。但不管我做什么,它总是返回None。我只是一个新手... 因此,如果解决方案是有意义的或什么的......但请任何人都可以告诉我为什么它没有返回任何值...?总是返回一个没有值的值
def get(self,key):
if self.root:
res = self._get(key,self.root)
if res:
return res.payload
else:
return None
else:
return None
def _get(self,key,currentnode):
if not currentnode:
return None
elif currentnode.key==key:
return currentnode
elif key<currentnode.key:
self._get(key,currentnode.leftchild)
else:
self._get(key,currentnode.rightchild)
我使用的键为比较参数每个节点的字典...
答
的以下行:
elif key<currentnode.key:
self._get(key,currentnode.leftchild)
else:
self._get(key,currentnode.rightchild)
有:
elif key<currentnode.key:
return self._get(key,currentnode.leftchild)
else:
return self._get(key,currentnode.rightchild)
所以答案有点太明显,就像一个魅力... thnku .. :) – 2014-09-02 04:47:20