問題タブ [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 投票する
15 に答える
73671 参照

java - Javaのツリーでノードを数える

まず第一に、これは宿題ではないことを誓います、それは私がインタビューで尋ねられた質問です。私はそれを台無しにしたと思います(解決策には再帰が必要であることに気づきましたが)。ここに質問があります:

ツリー内のノードの数を返すcount()メソッドを実装します。ノードに左または右の子がない場合、関連するgetXXChild()メソッドはnull

質問をする私の理由は、正しい解決策を見て、それによって私のものがどれほど悪かったかを測定することに興味があります。

乾杯、トニー

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

apache-flex - プログラムによる Flex ツリー コントロールの変更イベントのトリガー

現在選択されているツリー ノードに XML ノード構造を追加する方法があります。

これにより、xml が追加され、親ノードが開き、新しく追加されたノードが表示されます。

次に、ツリーの selectedItem を設定してノードを選択します。

ツリー変更イベントで値を更新する編集フォームがあります。このメソッドで selectedItem を設定すると、ノードは正しく選択されますが、変更イベントは発生しません (したがって、エディターは更新されません)。call laterブロックでそれを呼び出そうとしましたが、役に立ちませんでした。

この時点で、強制的にツリーに変更イベントをディスパッチさせる方法はありますか?

この質問を一般的な方法で拡張するには、ツリーの selectedItem を変更するととにかく変更イベントが発生すると思いましたか? それとも、変更はユーザーが行った場合にのみ変更と見なされますか?

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

apache-flex - Flex - Tree itemClick イベントを取得して itemOpen イベントを模倣する方法は?

XMLListContainer dataProvider で Tree コントロールを使用しています。次のコードで itemOpen イベントを使用して、ツリー フォルダが開かれたときに (小さな三角形を使用して) 別のデータ プロバイダを更新します。データ プロバイダには<slide />、その特定のすべての要素が含まれています。ツリー フォルダ...

2 番目のフォルダーを開くと、thumbDP は正常に更新されますが、最初のフォルダー (または別の閉じたフォルダー) をクリックすると、同じ動作が発生します (現在、最初のフォルダーを閉じて再度開く必要があります)。

だから私はitemClickイベントを使用します - しかし、これはListEventを起動し、XMLListContainerから子要素を簡単に取得する方法を理解できません...以下のコードは範囲外の例外をスローします

誰でも助けることができますか?ありがとう :)

0 投票する
6 に答える
7860 参照

silverlight - Silverlight でのグラフの視覚化

私は有向グラフを表すデータ構造を持っており、できれば素敵なアニメーションを使用して、ノードからノードに移動できるようにするための優れた Silverlight 視覚化を探しています。

この種の表示に適した UI コントロールまたはフレームワークを知っている人はいますか? 別の分野からのサンプルでも (おそらくソーシャル ネットワーク?)。私のグラフには多くのノードがないため、パフォーマンスは問題になりません。

理想的なJava(およびFlash)用のPrefuseライブラリを見てきました。「関心度」のビジュアライゼーションは私が求めているものですが、Silverlight では何も見つかりません。

ヒントをありがとう。

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

java - 順序付きリストからのツリー構築

Javaでは、常に順序付けられるリストからSortedSetを作成しています(ただし、ArrayListタイプのみです)。それらを1つずつ追加すると、ツリーを何度も並べ替える必要があるため、パフォーマンスがかなり低下すると思います(AVLツリーの場合など)。

私の質問は、このセットをどのように作成すればよいですか? バランスの取れたツリーをできるだけ早く構築する方法は?

私が使用することを計画していた特定の実装は、 http: //fastutil.dsi.unimi.it/docs/it/unimi/dsi/fastutil/ints/IntSortedSet.html の IntRBTreeSet または IntAVLTreeSet でした。

これを書いた後、とにかくパフォーマンスの悪さはあまり影響しないと思いますが(データ量が少なすぎます)、一般的なケースでそれがどのように行われるかについてはまだ興味があります.

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

c# - プレオーダー ツリー トラバーサル コピー フォルダー

いくつかのツリーを含むデータベースがあります。これらのツリーは、「プレオーダー ツリー トラバーサル」の原則を使用して構築されます。これはツリーを作成する非常に強力な方法ですが、一度に複数のノードを追加するという大きな欠点が 1 つあります。

ツリーにコピー関数を作成する必要があります。単一の (最下位レベルの) ノードをコピーするのは非常に簡単です。これは 1 回の呼び出しで実行できます。しかし今、フォルダ全体を一度にコピーしたいと考えています。ストアド プロシージャを使用して .net でこれを行うべきかどうか疑問に思っていました。トランザクションが機能することを確認する必要があります。何か問題が発生した場合は、ツリーが破損するため、すべてをロールバックする必要があります。

これで私を助けることができる人はいますか?ここで見つけることができる PTT に関する情報: http://en.wikipedia.org/wiki/Tree_traversal

編集:

もう少し情報が明らかに必要です。私は2本の木を持っています:

フォルダ 3 をフォルダ 6 の下にコピーできるようにしたいので、すべてのアイテムと一緒に子をコピーする必要があります。そして、すべての左右を適切に調整する必要があります。何かが失敗した場合は、完全なロールバックが必要です。これが今より明確になることを願っています。

EDIT2:

このためのストアド プロシージャを作成しました。誰かがそれを望んでいるなら、私は今日この質問に戻ってきます。ご希望があれば掲載します。

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

java - Javaでツリーを構築する

私はJavaの初心者です。1つのルートノードと、各ブランチにある程度の重みを持つ複数の子ノードを持つツリーを構築したいと思います。誰かがこれで私を助けることができますか?

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

tree - CRUDの足場と樹木

MVC Webフレームワークの概要を読むたびに、同じことがわかります。データクラスとビオラを説明するだけで、自動生成された管理インターフェイスが得られます。マイクロソフトでさえ、ついにダイナミックデータをリリースしました。

一般的に、それは素晴らしいことです。私は数年間(単純な)サイトを作成していましたが、ほとんどの場合、顧客が望んでいたのはCRUDだけでした。

ただし、ユーザーのストーリーに「任意の深さのネストされた制作カテゴリ」などの要件が含まれている場合があります。このような場合、parent_id属性をデータクラスに追加し、特定の親アイテムのデータアイテムを除外する可能性を追加しました。

箱から出してKey-ParentKey関係をサポートするCRUDインターフェースの例はありますか?これについてどう思いますか?

0 投票する
17 に答える
44664 参照

tree - ツリー構造の実世界の例

商用/フリー ソフトウェア プロジェクトで使用されているツリー構造の例を探しています。ウィキペディアで例を見ることができますが、より具体的な例とその使用方法を探しています。たとえば、データベースの主キーは(私が読んだことから)BST構造またはBSTのバリエーションに保存されています(これについてはお気軽に修正してください)

私の質問は二分探索木 (BST) に限らず、赤黒、AVL などのバリエーションを含めることができます。

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

java - ツリー内のサブツリーを見つける簡単な方法

ツリー (無制限の数のノードを持つことができる通常のツリーですが、クロスオーバーはありません。つまり、2 つの親ノードが同じ子ノードを指すことはありません) を使用するコードを書いています。とにかく、2つのこと:

1) ツリー内のサブツリーを見つけるためのよく知られたアルゴリズムはありますか?

2) このアルゴリズムを既に実装している Java ライブラリ (またはそのライブラリ) はありますか? 何もない場合でも、誰でも優れた汎用 Java ツリー ライブラリを推奨できますか?

これらのツリーは、検索機能のためではなく、ツリー形式でデータを保持するために使用したいと考えています。

少し拡張するには、特定のイベントが発生したときに何が起こるかの履歴を保持するために、ゲームの一部としてツリーを使用しています。たとえば、A は、別の 2 つの A をヒットできる 2 つの A をヒットできる B をヒットできます。

それは次のようになります。

もちろん、A と B だけではありません。私がやりたいことは (達成システムのために)、いつ A が 2 つの A にヒットしたかを知ることができるようにすることです:

最初のツリーにそのサブツリーが含まれているかどうかを簡単に知りたいです。そして、そうする必要がなければ、そのためのすべてのコードを書く必要はありません:)