python - 二叉树的查找方法不返回任何内容
问题描述
我有一棵二叉树,想在其中搜索元素。但由于某种原因,我没有得到任何输出,也没有错误。也尝试过调试,但代码始终执行到最后。
def find(self, i):
if self.__head is None:
return -1
else:
return self.__find(self.__head, i)
def __find(self, element, i):
if element is not None:
if i == element.value():
return 1
elif i < element.value():
self.__find(element.getLeft(), i)
else:
self.__find(element.getRight(), i)
else:
return -1
元素的代码如下:
class BElement:
def __init__(self, i, v):
self.__id = i
self.__value = v
self.__left = None
self.__right = None
def id(self):
return self.__id
def value(self):
return self.__value
def getLeft(self):
return self.__left
def setLeft(self, l):
self.__left = l
def getRight(self):
return self.__right
def setRight(self, r):
self.__right = r
def __str__(self):
s = "{"
if self.__left is not None:
s = s + str(self.__left)
s = s + str(self.__id) + ":" + str(self.__value)
if self.__right is not None:
s = s + str(self.__right)
s = s + "}"
return s
解决方案
删除值后的括号(),左右它们不是方法。
推荐阅读
- javascript - 如何从数据库中获取记录以选择它?
- mysql - 我正在为社区创建一个数据库来存储所有成员的详细信息。创建此类数据库的最佳方法是什么?
- python - 将多个内容拆分为多行
- sdk - Rally SDK 2 - 给定一个故事 A 和一个故事 B,由于 Javascript API,我怎么能说 B 是 A 的继任者?
- .net-core - Visual Studio 2019 中的 .Net Core 项目缺少“初始化与项目的交互”
- python - 问题 1 的问题,第 3 周,Introduction_to_Data_Science_in_Python coursera 网站
- mysql - 时隙上 MySQL 表上的选定行
- odoo-11 - 如何在应用程序菜单上的模块中添加图标?
- android - 将几个字符串值传递给另一个 Activity
- autodesk-forge - 在同一个查看器中加载多个模型时,属性数据库是否正在更新?