如何递归删除二叉树中以节点x为根的整个子树?
- 内容介绍
- 文章标签
- 相关推荐
本文共计570个文字,预计阅读时间需要3分钟。
名称:删除二叉树中以x为根的子树说明:此程序的主要部分内容如下,注释都进行了详细解释。在此需要指出的是,此处递归函数flag传递的不是上一节中提到的引用,而是一个普通的变量。
pythondef delete_subtree(root, x): if root is None: return None if root.val==x: return None root.left=delete_subtree(root.left, x) root.right=delete_subtree(root.right, x) return root
名称:删除二叉树中以x为根的子树
说明:此程序的大部分内容,注释都解释的较为详细了。在这里需要提及一点的是此处递归函数flag传递的不是上篇中讲的引用,而是普通的变量,因为在向下传递参数(当前结点是否是x的信息)的过程中只要传递给对应的子树,并不需要传递给整个树的结点。在下一篇会做个关于递归传递参数的总结。
本文共计570个文字,预计阅读时间需要3分钟。
名称:删除二叉树中以x为根的子树说明:此程序的主要部分内容如下,注释都进行了详细解释。在此需要指出的是,此处递归函数flag传递的不是上一节中提到的引用,而是一个普通的变量。
pythondef delete_subtree(root, x): if root is None: return None if root.val==x: return None root.left=delete_subtree(root.left, x) root.right=delete_subtree(root.right, x) return root
名称:删除二叉树中以x为根的子树
说明:此程序的大部分内容,注释都解释的较为详细了。在这里需要提及一点的是此处递归函数flag传递的不是上篇中讲的引用,而是普通的变量,因为在向下传递参数(当前结点是否是x的信息)的过程中只要传递给对应的子树,并不需要传递给整个树的结点。在下一篇会做个关于递归传递参数的总结。

