web-dev-qa-db-ja.com

バイナリ検索ツリーの「内部ノード」とは何ですか?

「内部ノード」という用語の定義をインターネットで探しています。簡潔な定義が見つかりません。私が見ているすべてのソースは、用語を定義せずに使用しています。また、使用法は、内部ノードが実際に何であるかを適切に定義するものではありません。

私が主に探してきた2つの場所は次のとおりです。 http://planetmath.org/encyclopedia/ExternalNode.html 内部ノードは、nullではない2つのサブツリーを持つノードであると想定していますが、元のツリーのどのノードが内部であるか外部であるかを言ってはいけません。

http://www.math.bas.bg/~nkirov/2008/NETB201/slides/ch06/ch06-2.html は、内部ノードが適切なバイナリツリーにのみ存在することを示唆しており、 tは、それらに関する多くの有用な情報を生成します。

実際に内部ノードです!?

40
evizaer
     I         ROOT (root is also an INTERNAL NODE, unless it is leaf)
   /   \
  I     I      INTERNAL NODES
 /     / \
o     o   o    EXTERNAL NODES (or leaves)

すばらしい写真が示すように、内部ノードはツリーのルートとリーフの間にあるノードです。ツリーの唯一のノードである場合を除き、ルートも内部ノードであることに注意してください。

2つの子を持つ必要がある内部ノードについてのサイトの1つで言われていることは、ノードが内部であるためではなく、完全なバイナリツリーであることです。

76
Vinko Vrsalovic

私が理解する限り、それは葉ではないノードです。

15
Alphager

Thomas H Cormenが編集した「Introduction To Algorithms」から:

子のないノードは「葉ノード」と呼ばれます。葉以外のノードは「内部ノード」です。

10
PRADOSH NAYAK

内部ノードまたは内部ノードは、子ノードを持つツリーの任意のノードであり、したがってリーフノードではありません。ルートノードとリーフノードの間の中間ノードは、内部ノードと呼ばれます。

ソース: http://en.wikipedia.org/wiki/Tree_data_structure

8
tvanfosson

最も賛成の答えは間違っています。ジュディス・ガースティングによるコンピューターサイエンスの数学構造によると、内部ノードは「子のないノードはツリーの葉と呼ばれます。すべての非葉は内部ノードと呼ばれます "

したがって、たとえば(I = INTERNAL NODE):I / \ * I /\ * *

6
user3083948

内部ノード(内部ノード、略してiノード、またはブランチノードとも呼ばれます)は、子ノードを持つツリーのノードです。同様に、外部ノード(外部ノード、リーフノード、またはターミナルノードとも呼ばれます)は、子ノードを持たないノードです。

迅速かつ簡単。

4
user1767754

内部ノード:ルートではなく、少なくとも1つの子を持つノード。

2
freedev

内部ノードまたは内部ノードは、子ノードを持つツリーのノードであり、したがってリーフノードではありません。または、ルートノードとリーフノードの間の中間ノードは内部ノードと呼ばれます。

1
SHASHI BHUSAN

内部ノード-少なくとも1つの子を持つノード。外部ノード-子のないノード。

1
nil96

通常、内部ノードは、リーフではないノード(子のないノード)です。

拡張バイナリツリー(比較ツリー)では、各内部ノードが行う必要がある比較に対応しているため、内部ノードにはすべて2つの子があります。 .1、p.181(ed.2)。ところで、これらのツリーを使用して除去トーナメントのペアリング(およびバイ)を表す方法については、この資料のセクション5.4.1で説明します。]

Vinkoの図はこの区別を反映していますが、ルートノードは、親を持たない唯一のノードであることに加えて、常に内部ノードまたはリーフノードでもあります。

ツリーの情報構造とプロパティのKnuthの扱いには、より広い議論があります[TAoCP vol.1 Fundamental Algorithms、セクション2.3.4.5、p.p。演習を含む399-406(ed.3)(本の裏で多くのワークアウト)]。

バイナリ検索ツリー(内部ノードも単一の値を保持し、最大2つの子を持つ)が多少異なることに注意してください[TAoCP vol.3、セクション6.2.2]。ただし、命名法はまだ機能します。

1
orcmid

二分木は、ゼロ、1つのノードを持つことができ、最大2つのノードを持つことができます。二分木には、左ノードと右ノードがあります。

1
Manoj Singh

Ya内部ノードにはルートは含まれません。また、用語としての完全なバイナリツリーは、各内部ノードが正確に2つのノードを持つ必要があることを示しています。しかし、単純なバイナリツリーでは、各内部ノードには最大2つのノードがあります。つまり、2つ以上のノードを含めることはできませんが、2つ未満は許容されます。

0
suraj

少なくとも1つの子を持つノード。

0
Rich