問題タブ [inorder]

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

ocaml - OCaml - 順番に次のノードへの参照を設定する (バイナリ ツリー)

「ツリー= |」と入力します。空| 'a * 'a tree* 'a tree* 'a tree ref;; のノード

すべてのノード ツリー ref を次のノードに順番に設定したいと考えています。

例えば

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

java - inOrderIterator メソッドは BinaryTreeNode に適用できません

InOrderIterator トラバーサル メソッドに取り組んでいます。これを再帰的に行う方法は理解していますが、このコンパイラ エラーが発生し続けます。

このメソッドをそのオブジェクトに適用できない理由がわかりません。何か案は?これまでの私の方法はここにあります

LinkedBinarySearchTree.java

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

python - Python でのインオーダー トラバーサル

私が取り組んでいる問題は、BST での順序通りのトラバーサルで最初に出現するノードを見つけることです。私が持っているコードを以下に示します

このコードは常に None を返します。何が問題なのですか。値 k のノードを見つけたら、ノードを返したと思います。Pythonがこのノードを通過できないのはなぜですか???事前に感謝します

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

java - 再帰 (ツリー トラバーサル) でのスタックの巻き戻しを理解する

二分探索木をたどるプログラムを書いています。コードは次のとおりです。

Main.java

Node.java

BinaryTree.java

追加プロセスは完全に理解していますが、トラバーサルを理解するのに苦労しています。今、私が作業しているツリーは、より良い参照のためにこれです:

BinaryTree

関数の最初のステートメントはinOrderTraversal()50,40 にアクセスし、次に 39 にアクセスし、最後に null にヒットして if 条件を false にし、その後 39 が出力され、正しい子が検索されます。この後、最初のステートメントの実行が停止し、2 番目と 3 番目のスタックがアンワインドされます。私が理解していない部分である 40 を印刷して 41 にトラバースするステートメント (inOrderTraversal(node.right)および) につながる、つまり、スタックに新しいものがあるとすぐに実行を停止した後、コンパイラーはどのようにステートメント 1 ( ) を再開しますか。print(node.data)inOrderTraversal(node.left)