济宁网站建设价格,新密建设局网站,房产cms,高品质的网站开发#xff08;1#xff09;删除叶子节点 找到要删除的节点 targetNode找到要删除节点的父节点parent#xff08;父节点是否存在#xff09;要删除的节点是父节点的左子树还是右子树如果是左子树#xff0c;则parent.leftnull;如果是右子树则parent.rightnull。 #xff08;… 1删除叶子节点 找到要删除的节点 targetNode找到要删除节点的父节点parent父节点是否存在要删除的节点是父节点的左子树还是右子树如果是左子树则parent.leftnull;如果是右子树则parent.rightnull。 2删除只有一个子节点的节点 找到要删除的节点 targetNode找到要删除节点的父节点parent父节点是否存在确定该待删除节点是有左子树还是有右子树要删除的节点是父节点的左子树还是右子树如果 targetNode是parent的左子树;targetNode有的是左子树parent.lefttarget.left如果 targetNode是parent的左子树;targetNode有的是右子树parent.lefttarget.right如果 targetNode是parent的右子树;targetNode有的是右子树parent.righttarget.right如果 targetNode是parent的右子树; targetNode有的是左子树parent.righttarget.left (3)删除有两个子树的节点 找到要删除的节点 targetNode 找到要删除节点的父节点parent父节点是否存在确定要删除的节点是父节点的左子树还是右子树找右子树或右子树的的最左端(temp)和要删除的节点进行替换删除被替换的节点targetNode.datatemp