BST移除函数,尝试添加奇数和偶数来确定要进入哪个循环



我要做的是,我还没有完成它,但我现在有这个代码:

def delete(self):
        t=1
        if isinstance(self.root,odd):
        child=self.left
        grandchild=child.right
        if self.left == self.right==None:
            return None
        if self.left==None:
            return self.right
        if self.right==None:
            return self.left
        if grandchild:
            while grandchild.right:
                child = grandchild
                grandchild = child.right
            self.data = grandchild.data
            child.right = grandchild.left
        else:
            self.left = child.left
            self.data = child.data
        return self
        if isinstance(self.root,even):

我还没有完成代码,但是对于赋值,它应该做两种选择(几乎相同的事情,但不是向左,然后向右尽可能,我要向右,然后向左尽可能)。我想的是在每个循环后加上t+=1,如果数字是奇数,我想让它进入第一个循环,如果是偶数,我想让它进入另一个循环(我还没有做那个循环)。我可以很容易地做到这一点(因为我想做,如果isinstance(t,偶数)和如果isinstance(t,奇数),但python似乎没有这种语法?什么好主意吗?

根据我的理解,你想算出t是不是odd or even

你应该使用%(模)运算符。

if t%2 == 0: # then it is even (divisible by 2)
if t%2 == 1: # it is odd (not divisible by 2)

我希望这能回答你的问题

相关内容

  • 没有找到相关文章

最新更新