問題タブ [tree-traversal]

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 に答える
22271 参照

java - Java バイナリ ツリー。InOrder トラバーサルの印刷

バイナリ ツリーの inOrder トラバーサルを出力する際に​​問題が発生しています。ツリーに多くのアイテムを挿入した後でも、3 つのアイテムしか印刷されません。

0 投票する
2 に答える
7194 参照

c++ - Btree をトラバースする方法は?

私は Btree を持っており、キーが昇順で表示されるようにそれをトラバースする方法を理解しようとしています。

私が理解できるのは、これが再帰関数で実行できるということだけです。

それを行うための擬似コードは何ですか?

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

jquery - jQuery: 一致した各要素に一意の ID を付与する

サポートされていない言語を拡張するために、クラウド コンピューティング プラットフォームで使用する「インライン トランスレータ」アプリケーションを作成しています。この大部分は、jQuery を使用してテキスト値を検索し、それを翻訳に置き換えてから、一意の ID を持つ span タグを要素に追加して、アプリケーション内の他の場所で使用します。ただし、翻訳対象の値がまったく同じ (一致する要素) など、複数の要素がある場合に問題が発生します。問題の関数では、親タグから 2 番目、3 番目、4 番目などを取り出して、一致したすべての要素を同じスパンに配置します。私のコードは、次の例によく似ています。

回避策として、ループを使用して各スパンのクラスを作成し、jQuery("input[id~=test1]").length まで増分して実験しましたが、何も得られないようです。仕事に。一致した各要素に一意の ID を与える方法はありますか? 私の jQuery の流暢さが試されています。

事前に助けてくれてありがとう。

アーロン

0 投票する
2 に答える
4350 参照

c++ - inorder および postorder トラバーサルを指定して、ツリーの preorder トラバーサルを出力するにはどうすればよいですか?

整数配列に先行順トラバーサルとインオーダートラバーサルがある場合に、ツリーの後順トラバーサルを出力するコードが与えられます。inorder と postorder 配列を指定して同様に preorder を取得するにはどうすればよいですか?

これが preorder() のプロトタイプです

void preorder( int inorderorder[], int inostart, int postorder[], int poststart, int length)

postorder() を使用するには、次のようになります

出力は

以下は print_preorder() の間違ったコードで、まだ動作していません

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

c++ - BST preorder トラバーサルと一時配列へのツリー コンテンツの書き込み

メインで使用するために、二分探索木のコンテンツを一時配列に書き込もうとしています。ただし、どうすればよいかわかりません...次のようなことを試しました:

そして、次のエラーが発生します。

参照の配列としての 'temp'a の宣言

'((Book*)this->Book::temp[x]' の 'operator[]' に一致しません

「Book::preorder(TreeNode*&, Person&, int&)」の呼び出しに一致する関数がありません

0 投票する
4 に答える
4612 参照

binary-tree - ポストオーダー トラバーサル

順序付けされたツリー トラバーサルには明らかに用途があります。内容を整理します。

preorder トラバーサルは、ツリーのコピーを作成するのに非常に便利です。

二分木のポストオーダートラバーサルの一般的な用途はありますか?

0 投票する
2 に答える
621 参照

haskell - HaskellでのSceneGraphトラバーサル

とノードData.Treeで構成される単純なSceneGraphをHaskellに実装したいと思います。シーングラフでは、空間変換はトラバース中に蓄積され、レンダリングのためにシェイプに適用されます。TransformShape

右に移動し、下部に正方形、上部に円で構成されるオブジェクトがあるシーンがあるとします。

私はこのツリーの定義を思いついた:

レンダリングは次のようになります。

私の質問は次のとおりです。

1)traverse変換を累積し、レンダリングタスクを呼び出す関数をどのように定義しますか?

2)トラバースIOを作成しないようにするにはどうすればよいですか?

3)このツリーを定義するためのより短いバージョンはありますか?最初のノード定義とすべての空のsubForestを除くすべては、実際には不要です。

ありがとうございました!

0 投票する
4 に答える
2482 参照

c# - ビン ツリー ポスト オーダー トラバーサル、再帰なし、ノード フラグなし

これを行う別の方法はありますか?それを理解するのに2時間費やしました。私には解決策があります (以下の DumpPostOrder を参照)。しかし、より効率的な方法はありますか? あってもいい感じです。ルールは次のとおりです - 再帰なし、ノードは訪問済みフラグを持つことはできません。つまり、 left + right メンバーのみを使用できます。

私のアプローチは、その過程で木を破壊することでした。各側の子を null に設定することで、ノードを 1 回トラバースしたものとしてマークできますが、子を持つ各ノードも 2 回見ています :(. より高速な方法はありますか?必須ではありません (つまり、投票しますが、回答をマークしません)。

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

algorithm - O(logn)時間計算量におけるBSTの中央値

私はhttp://discuss.joelonsoftware.com/default.asp?interview.11.780597.8でMorrisInOrderトラバーサルを使用して与えられた解決策に出くわしました。これを使用して、O(n)時間の中央値を見つけることができます。

しかし、同じ使用O(logn)時間を達成することは可能ですか?同じことがここで尋ねられました-http://www.careercup.com/question?id =192816

0 投票する
2 に答える
8610 参照

algorithm - 実際のプレオーダー/ポストオーダー ツリー トラバーサルの例

プレオーダー、インオーダー、ポストオーダーのツリー トラバーサル アルゴリズムをよく理解しています。(参照)。私はいくつかの用途を理解しています: 二分探索木を順番にトラバースするための in-order 、木のクローンを作成するための pre-order です。しかし、私は一生、注文後のトラバーサルが必要な現実世界のタスクを思いつくことはできません。

例を教えてください。そして、事前注文トラバーサルのより良い使い方を教えてください。

編集: 式ツリーと RPN 以外の例を教えてください。それは本当にすべてのポストオーダーが良いのでしょうか?