問題タブ [tree-balancing]

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 投票する
1 に答える
195 参照

c - 二分木バランスの取り方

これはcの単純な二分木ですが、バランスが取れていないようです。どうすればバランスが取れますか?

コード:

0 投票する
1 に答える
1523 参照

java - 100*7-8*3+7 のような式の可能な解をすべて見つけるにはどうすればよいですか? (10 匹中 8 匹の猫がカウントダウン ソルバーを実行)

楽しいので、10 匹中 8 匹の猫がカウントダウン数パズルを解くことができる簡単なプログラムを作成することにしました。リンクはカウントダウン形式ですが、ルールは同じです。したがって、私のプログラムは、AxBxCxDxExF のすべての可能な組み合わせを単純に処理します。ここで、文字は数字で、「x」は +、-、/、および * です。これがそのコードです:

そして、これが私が望んでいない組み合わせであるかどうかをテストするために使用するものです。

前回のエピソードで、コードに問題があることがわかりました。これは、パズルの 1 つの解決策でした。

この組み合わせ「10 * 7-8 * 3 + 7」(2回)を見つけたことに気付きましたが、左から右に操作を行って解決策を確認しているため、実際にはすべての答えが見つかりません。このようなソリューションのみをチェックします ((((10*7)-8)*3)+7)。そのため、組み合わせが見つかりましたが、正しい順序がありません。

問題は、(10*7)-(8*(3+7))、(10*7)-((8*3)+7)、または 10*( 7-8)*(3+7)? ただし、バランシング ノードとしての操作でバランス ツリーを使用できます。しかし、式を移動せずにすべての可能な組み合わせを通過する方法がわかりません。

コードでこれを行うにはどうすればよいですか? 解決されたコードを探すのではなく、それを修正するためにパースペクティブを変更する必要があります。なぜ私はそれに困惑しているのか分かりません。

私について: コンピューター サイエンス 4 年目、プログラミングの新人でも初心者でもない (少なくとも信じたい ;))

0 投票する
1 に答える
1911 参照

java - Java BinaryTree:挿入メソッドでツリーのバランスをとる方法は?

二分探索木のバランスを取ろうとしていますが、うまくいかない理由はわかっていますが、修正方法がわかりません。インサート方式でダイレクトにバランスをとります。バランス調整が必要な場所にスラッシュを付けました。このようにコードが機能せず、次の例外が発生します。

バランスをとらずに挿入すると、何も問題ありません。

0 投票する
0 に答える
82 参照

c++ - BST の再帰的なバランス調整

私はBSTのクラスを持っています。RotateBST のルートを引数として取り、バランスの取れた BST を返す再帰関数が必要です。

1つのノードだけバランスをとるコードが添付されていますが、ルートノードに対しては機能していません。

再帰的にしたいので、単一のノードではなくツリー全体のバランスを取ります。

0 投票する
1 に答える
806 参照

tree - B+ ツリーのリーフ レベルに含めることができるキーの数

データベースの授業で、教授が B+ ツリーからキーを削除することについて説明していました。以下の画像が表示された場合:

ここに画像の説明を入力

ここに画像の説明を入力

ノードにはせいぜいキーleaf levelのみを含めることができると彼が言った1つの部分を除いて、私はすべてを完全に理解しました。3私の理解では、 の深さに応じてB+ tree、合計キーはリーフ レベルで決定され、dd2*dはツリーの深さです。ここdではリーフが 2 であるため、リーフ レベルのノードに4キーを設定できないのはなぜですか。どこが間違っているのですか?

ルートレベルに含まれるキーの総数もここで重要ですか? 誰か説明してくれませんか

0 投票する
1 に答える
409 参照

data-structures - 次のシーケンスからボトムアップ スプレー ツリーを作成する方法

これはシーケンス 20,10,5,30,40,57,3,2,4,35,25,18,22,27 です。新しく挿入されたすべてのノードをルートとして試してみましたが、うまくいきません。誰かが私に段階的な説明を教えてもらえますか?