## 二叉樹節點刪除
對于二叉查找樹的刪除操作(這里根據值刪除,而非結點)分三種情況:
不過在此之前,我們應該確保根據給定的值找到了要刪除的結點,如若沒找到該結點
不會執行刪除操作!
下面三種情況假設已經找到了要刪除的結點。
1、如果結點為葉子結點(沒有左、右子樹),此時刪除該結點不會玻化樹的結構
直接刪除即可,并修改其父結點指向它的引用為null.如下圖:

2、如果其結點只包含左子樹,或者右子樹的話,此時直接刪除該結點,并將其左子樹
或者右子樹設置為其父結點的左子樹或者右子樹即可,此操作不會破壞樹結構。

3、 當結點的左右子樹都不空的時候,一般的刪除策略是用其右子樹的最小數據 (容易找到)代替要刪除的結點數據并遞歸刪除該結點(此時為null),因為 右子樹的最小結點不可能有左孩子,所以第二次刪除較為容易。 z的左子樹和右子樹均不空。找到z的后繼y,因為y一定沒有左子樹,所以可以刪除y,并讓y的父親節點成為y的右子樹的父親節點,并用y的值代替z的值.如圖:
