binary-tree

    0

    1答えて

    私はwikiページと他のStackOverflow答えを読んだ。誰かがこの2つのアルゴリズムが何をするのか説明することができます。 はTreesortは、二分探索木(BST)上で実行INORDERトラバーサルを使用しています

    1

    1答えて

    親ノードに移動カーソルをバイナリツリーで移動しようとしています。私はノードを保持して親を追跡することなく再帰的にやりたい私のベース/ストップケースは正しいと思いますが、私は最後の2つのifステートメントが間違っていると思います。私はそれについてどうやって行くのか分からない。アドバイスが参考になります。ありがとうございました。 public void cursorToParent() {

    0

    2答えて

    これは先週の講義で挑戦された質問で、以来私はそれを検討してきました。 k番目に大きい要素の2つのAVLツリーを検索するアルゴリズムを作成するように求められました。 2つのツリーの各ノードには、その整数値とそれ自身を含むサブツリー内にある子の数の2つの情報が含まれています(リーフには1つの子があります)。アルゴリズムの複雑さはO((logn)^ 2)よりも悪くはありません。 私はあるツリーの各ノード

    6

    2答えて

    本の第9章エキスパートF#3.0は、バイナリツリーをトラバースするときにスタックオーバーフローを回避するために継続通過スタイルを使用する方法を示しています。私は本のコードとほぼ同じツリートラバーサルコードを書いていますが、それでもスタックオーバーフローが発生します。次のように私のコードは次のとおりです。 type 'a Tree = | Leaf of 'a | Branch

    1

    1答えて

    正しいデータを持つ既知の数のノードを持つ完全なバイナリツリーにデータを入力しようとして問題が発生しています。基本的に、私はこれを作成し、実装している:しかし、私はこのようなツリーを作成するために探しています 7 5 6 1 2 3 4 : 7 3 6 1 2 4 5 次のようにツリーのノードを挿入するための私の現在の実装です。 def _add_node(s

    1

    1答えて

    を使用して、バイナリツリーの左葉の合計を取得します。I次のコードを持っていますが、このコードでは問題があるように思われる:私は上記のコードを使用して9得るが、入力[3, 9, 20, null, null, 15, 7, 2, null, null, null, 3, 2, null, null, null, 3]については private boolean isLeaf(TreeNode node

    0

    1答えて

    私は、特定のタイプのツリーを構築しようとしています。各内部ノードのデータは、ツリーのリーフに依存しています。私は事前注文配列pre[] = { 0,0,0,1,2,3,0,4,5}を持っています。ここで、各 "0"は内部ノードを表し、それ以外のものは葉を表します。このツリーを作成すると、次のようになります。 0 / \ 0 0 /\ /\ 0 3 4

    0

    1答えて

    必須のキーがまだリストにない場合(つまり、ノードにその親への参照がない場合)は自分のコード(下)が機能します。それはノードを無視し、それらを持たないツリーを作成するだけです。どうすれば修正できますか?私はすべてのキーが入っていれば、ちょうど再ループすることを考えていて、それに応じて追加と削除を続けます。 #include <iostream> #include <string> #includ

    -1

    1答えて

    私の割り当てのためにバイナリ検索ツリーのための再帰的コピー方法を最初から作成する必要があります。このメソッドは、指定されたBinarySearchTreeオブジェクトの各項目を呼び出し元のBinarySearchTreeオブジェクトにコピーする必要があります。問題は、メソッドがvoidでなければならないということだけです。このトピックで調べたすべてが、これを行うために異なる戻り値の型を使用している