ここで、stackoverflow で同様の質問を見ましたが、(明らかに) 回答がありませんでした。
5 つの RB ツリーのいずれも無効にすることなく、そのようなツリー (8 つの黒いノードと 12 の赤いノード) を構築しようとすることができます (ただし、これまでのところ、それを行うことはできませんでした)。
- ノードは赤または黒のいずれかです
- 根元が黒い
- 葉っぱが全部黒い
- すべての赤いノードの両方の子は黒です
- 特定のノードからその子孫の葉のいずれかへのすべての単純なパスには、同じ数の黒いノードが含まれます。
しかし、私はよりエレガントな答えに本当に興味があります(それが機能するかどうか試してみる以外に)。
編集:葉が黒としてカウントされる場合、そのようなツリーを構築することは不可能であることは明らかです. しかし、葉が黒いノードとしてカウントされない場合はどうでしょうか (8 つの非葉ノード)。