問題タブ [binary-tree]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
19569 参照

tree - 2 つの二分木が同形であるとはどういう意味ですか?

2 つの二分木が同形であるとはどういう意味ですか? 私はオンラインで探していましたが、明確な説明が見つからないようです。

私が理解している限りでは、2 本の木は同じ形であれば同形です。したがって、ノードに異なる値を含めることができる2つの同一のツリーを推測しています。

0 投票する
27 に答える
137475 参照

java - 二分木がバランスしているかどうかを判断する方法は?

あの学年から久しぶりです。病院でITスペシャリストとして就職。今、実際のプログラミングを行うために移動しようとしています。私は現在二分木に取り組んでおり、木が高さのバランスが取れているかどうかを判断するための最良の方法は何でしょうか。

私はこれに沿って何かを考えていました:

これは良い実装ですか?または私は何かが欠けていますか?

0 投票する
5 に答える
1519 参照

algorithm - BST に挿入するとき、挿入される最初の項目は常にツリーのルートですか?

ウィキペディアの実装を見ると、標準の BST (非自己平衡化) は挿入中に再配置されないように思われるため、最初に追加された項目が常にルートになります。これは正しいです?もしそうなら、それはBSTがしばしばO(logN)よりも悪い可能性があることを意味しませんか?

これを再帰挿入のリファレンスとして使用する:

0 投票する
10 に答える
103921 参照

c - C 二分木をコンソールに「描画」する方法

コンソールでバイナリ ツリーを描画するために使用できるアルゴリズムは何ですか? ツリーは C で実装されています。たとえば、数字が 2 3 4 5 8 の BST は、コンソールに次のように表示されます。

代替テキスト

0 投票する
7 に答える
13203 参照

data-structures - 空の二分探索木は有効ですか?

二分探索木に関して2つの質問があります。どちらも空の木についてです。

  1. 空の木(null)は有効ですか?
  2. 子のないルートノードは有効ですか?
0 投票する
6 に答える
2248 参照

tree - バイナリワードツリー

私は最後のcsクラスにほとんどきしみませんでした、そして今私はデータ構造にいます。私は二分木構造を最初から構築していますが、イテレータがどのように機能するかについて少し混乱しています。二重リンクリストでどのように機能するかは理解していますが、これがどのように機能するかはわかりません。

0 投票する
5 に答える
55517 参照

c# - 二分木を作成する方法

二分探索木という意味ではありません。

たとえば、値1,2,3,4,5を二分探索木に挿入すると、インオーダートラバーサルは出力として1,2,3,4,5を返します。

しかし、同じ値を二分木に挿入すると、インオーダートラバーサルは出力として4,2,5,1,3を与えるはずです。

二分木は、動的配列を使用して作成できます。動的配列では、インデックスnの各要素について、2n+1と2n+2がそれぞれその左と右の子を表します。

したがって、ここでは表現とレベル順序の走査が非常に簡単です。

でも、インオーダー、ポストオーダー、プレオーダーは難しいと思います。

私の質問は、二分探索木のような二分木をどのように作成できるかということです。すなわち。配列の代わりにデータ、左および右のポインタを含むツリークラスがあります。再帰的にトラバーサルを実行できるようにします。

0 投票する
5 に答える
12343 参照

java - Java、二分木削除メソッド

remove(node cRoot, Object o)ソートされた二分木の関数を書こうとしています。

これが私がこれまでに持っているものです:

正しく動作しません。ノードを削除するには、ツリーを修復して穴を修正する必要があります。これはどのように行う必要がありますか?