一行打印二进制树的最佳方法



示例:我的树有这个元素:123,234,345,456我的Metod正在打印此:

123 
234
345
456

我想要这个123 234 345 456我的代码下面:

def walk(self,x):
    if x!=None:
        self.walk(x.getLeft())
        print(x.getData())
        self.walk(x.getRight())

我找到了一种方法:

 def __init__(self,s=None):
    self._root=None
    self._s=''
  def getS(self):
    return self._s
  def setS(self,s):
    self._s=s
  def walk(self,x):
    if x!=None:
        self.walk(x.getLeft())
        if self.getS()=="":
            s=str(x.getData())
            self.setS(str(self.getS())+s)
        else:
            s=" "+str(x.getData())
            self.setS(str(self.getS())+s)
        self.walk(x.getRight())

,只打印:

 print(t.getS())

只需在您的print()

中添加end ="
def walk(self,x):
    if x!=None:
        self.walk(x.getLeft())
        print(x.getData(), end="")
        self.walk(x.getRight())

相关内容

最新更新