ホームページ  >  記事  >  二分木のノードを数える方法

二分木のノードを数える方法

尚
オリジナル
2019-06-10 15:30:0128559ブラウズ

二分木のノードを数える方法

1. バイナリ ツリーの i 番目のレベルには最大 2^(i-1) 個のノードがあります

2. 深さ h のバイナリ ツリーには次のノードがありますほとんどの 2^k- 1 ノード

##3。バイナリ ツリーの場合、n0 個の葉ノードと次数 2 の n2 個のノードが含まれる場合、次の関係が存在する必要があります: n2=n0-1

4. n 個のノードを持つ完全なバイナリ ツリーの深さは [log2n] 1 です。[] は四捨五入を意味します

5. n 個のノードを持つ完全なバイナリ ツリーの深さが上から下、左から下にあるとします。右側に 1 から n までの番号を付けると、完全なバイナリ ツリー内の i 番号が付けられた任意のノードが対象になります。

i=1 の場合、ノードはバイナリ ツリーのルートであり、親がありません。それ以外の場合、ノードはバイナリ ツリーのルートになります。番号は [ ノード i/2] がその親ノードです;

2i>n の場合、そのノードには左の子ノードがありません、それ以外の場合は、番号 2i のノードがその左の子ノードです;

2i 1>n の場合、ノードには右の子ノードがありません。そうでない場合、2i 1 の番号が付けられたノードがその右の子ノードになります。

完全な二分木のノード数が n の場合、数値 n0、n1、n2 の高さ h、左側の子ノードの数 nl、右側の子ノードの数 nr を求めますか?

(n0 は次数 0 のノード、n1 は次数 1 のノード、n2 は次数 2 のノード)


以上が二分木のノードを数える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。