草庐IT

nodeToDelete

全部标签

c++ - 从二叉树中删除一个二叉树节点

我有一个BinarySearchTree,它由节点组成,这些节点都是dataTypestudent的模板类,其中student是一个具有名称和年级私有(private)变量的类。目前我可以打印树,在树中查找姓名和/或成绩,但我无法从树中删除节点。我正在尝试删除所有成绩删除节点后,需要发生以下情况之一:左child为空:用右child替换节点。左child不为空:用左边最高的元素替换节点分支机构。我对此的理解是,如果这是树的话:1/\23/\/\4567如果2失败,即成绩你最终会得到1/\43\/\5674是左分支中最高的元素。如果这是树:1/\23\/\567还有2个失败了你最终会得到