私の脳に食い込む何かがあります: 次のツリーの深さはどのようにできますか?
b
/ \
a c
be 3、最も引用されたアルゴリズムの後に (ここでは Java で):
int depth(Node n)
{
if(n == null)
{
return 0;
}
int lDepth = depth(n.left);
int rDepth = depth(n.right);
return 1 + ((lDepth > rDepth) ? lDepth : rDepth);
}
単一の (ルート) ノードのみを持つツリーの深さが、0ウィキペディアと、深さが最も深いノードへのパスの長さとして定義されている他の多くのソースによると? 明らかに、ノードが 1 つしかないツリーの最も深いノードへのパスの長さは ですが0、上記のアルゴリズムでは よりも小さいものは決して得られません1。
単一のルート ノードを持つツリーの深さですか0、それとも1ですか? そうである場合0、上記のアルゴリズムは不完全1です。
そんな些細なことが裏返しになるとは思いもよりませんでした。