diff --git a/docs/rbdelete.txt b/docs/rbdelete.txt index 0c1eb6f..21b7a59 100644 --- a/docs/rbdelete.txt +++ b/docs/rbdelete.txt @@ -93,15 +93,48 @@ where 6 subcases could be distinguished. Wikipedia says we begin with replacing B(3) which one if its childs, in my case this means, setting r(8)->left to NULL.... + B(11) + + R(8) R(13) + + B(N) B(9) B(12) B(16) + + B(N) R(10) B(N) B(N) B(N) B(N) + + B(N) B(N) + So, what is called in on Wikipedia is simply a nullpointer for me...hopefully I don't have to do anything with it. Get an overview over our variables now: - N : Nullpointer set in R(8)->left + N : Nullpointer set in R(8)->left (thus N will be black by definition, ever) P : R(8) S : B(9) Sl: Nullpointer Sr: R(10) +we have case 2 described in Wikipedia (reverse colors of P and S) + + B(11) + + R(8) R(13) + + B(N) B(9) B(12) B(16) + + B(N) R(10) B(N) B(N) B(N) B(N) + + B(N) B(N) + +still case 2 rotate left on P + + B(11) + + B(9) R(13) + + B(8) R(10) B(12) B(16) + + B(N) B(N) B(N) B(N) B(N) B(N) B(N) B(N) + + # vim: set et ts=4: