問題タブ [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.
ocaml - OCaml - 順番に次のノードへの参照を設定する (バイナリ ツリー)
「ツリー= |」と入力します。空| 'a * 'a tree* 'a tree* 'a tree ref;; のノード
すべてのノード ツリー ref を次のノードに順番に設定したいと考えています。
例えば
java - inOrderIterator メソッドは BinaryTreeNode に適用できません
InOrderIterator トラバーサル メソッドに取り組んでいます。これを再帰的に行う方法は理解していますが、このコンパイラ エラーが発生し続けます。
このメソッドをそのオブジェクトに適用できない理由がわかりません。何か案は?これまでの私の方法はここにあります
LinkedBinarySearchTree.java
python - Python でのインオーダー トラバーサル
私が取り組んでいる問題は、BST での順序通りのトラバーサルで最初に出現するノードを見つけることです。私が持っているコードを以下に示します
このコードは常に None を返します。何が問題なのですか。値 k のノードを見つけたら、ノードを返したと思います。Pythonがこのノードを通過できないのはなぜですか???事前に感謝します
java - 再帰 (ツリー トラバーサル) でのスタックの巻き戻しを理解する
二分探索木をたどるプログラムを書いています。コードは次のとおりです。
Main.java
Node.java
BinaryTree.java
追加プロセスは完全に理解していますが、トラバーサルを理解するのに苦労しています。今、私が作業しているツリーは、より良い参照のためにこれです:
関数の最初のステートメントはinOrderTraversal()
50,40 にアクセスし、次に 39 にアクセスし、最後に null にヒットして if 条件を false にし、その後 39 が出力され、正しい子が検索されます。この後、最初のステートメントの実行が停止し、2 番目と 3 番目のスタックがアンワインドされます。私が理解していない部分である 40 を印刷して 41 にトラバースするステートメント (inOrderTraversal(node.right)
および) につながる、つまり、スタックに新しいものがあるとすぐに実行を停止した後、コンパイラーはどのようにステートメント 1 ( ) を再開しますか。print(node.data)
inOrderTraversal(node.left)