問題タブ [non-recursive]
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.
recursion - 二分木を作成するための再帰的アルゴリズムの反復バージョン
このアルゴリズムを前提として、反復バージョンが存在するかどうかを知りたいと思います。また、反復バージョンの方が高速であるかどうかを知りたいです。
このある種の疑似Python...
アルゴリズムはツリーのルートへの参照を返します
recursion - 二分木ノードの深さを非再帰的に取得する
再帰を使用せずに、バイナリツリー(バランスの取れたもの、またはBSTではない)のノードの深さを取得する方法を誰かが指摘できますか?理想的にはJava/C / C#で
ノードは次のように表されます。
FIFOリストでレベル順序を使用することは私の最初の考えでしたが、特に不均衡なツリーの場合、レベルがいつ変化するかを検出することに困惑しました。
binary-tree - 再帰なしの二分木のポストオーダートラバーサル
再帰を使用せずにバイナリツリーのポストオーダートラバーサルを実行するためのアルゴリズムは何ですか?
file - 現在のフォルダ ファイルのリストのみですか?
こんにちは、Perforce 構文を取得して (たとえば、「fstat」を使用して) 特定のフォルダー (デポ) 内のファイルのみのリストを取得しようとしています。すべてのサブフォルダーからゴミはありません。しかし、ドキュメントには何も見つかりませんでした。Google の使用時に関連するものは何もありませんでした。など 私をどこにも連れて行かない...
全然出来ないからじゃない?なぜだか分からない… あれって演奏裏打じゃないの!?
前もって感謝します。セブ。
python - 再帰を使用せずに順序トラバーサルを理解するのを手伝ってください
再帰を使用せずにプレオーダートラバーサルを理解することはできますが、インオーダートラバーサルに苦労しています。おそらく、再帰の内部動作を理解していないために、私はそれを理解していないようです。
これは私がこれまでに試したことです:
内側のwhileループは正しく感じられません。また、一部の要素は2回印刷されています。そのノードが以前に出力されたかどうかを確認することでこれを解決できるかもしれませんが、これには別の変数が必要です。どこが間違っているのですか?
注文後のトラバーサルは試していませんが、似ていると思います。そこでも同じ概念上の障害に直面します。
御時間ありがとうございます!
Lifo
PS:との定義Node
:
inheritance - サブモジュールの pom が親のプラグインを継承しないようにするには?
私のプロジェクトには、親 pom といくつかのサブモジュール pom があります。インストーラ配布可能ファイルのビルドを担当するプラグインを親に入れました (install4j を使用)。このプラグインをサブモジュールで実行するのは意味がないので、以下に示すように、プラグインの構成に false を入れました。問題は、実行すると、親でプラグインmvn clean install install4j:compile <other variables here>
をクリーンアップ、コンパイル、および実行しinstall4j
ますが、子モジュールでプラグインを実行しようとしてクラッシュすることです。
プラグイン構成はこちら
の目的を誤解していinherited=false
ますか? これを機能させる正しい方法は何ですか?
Maven 2.2.0 を使用しています。
c++ - フォールト時に組み合わせを生成する問題への非再帰的アプローチ
特定の文字または数字のセットの組み合わせを生成する問題に対する非再帰的なアプローチが必要でした。
したがって、数 n の部分集合 k が与えられた場合、考えられるすべての組み合わせ n!/k!(nk)! を生成します。
再帰的な方法は、前の 1 つの組み合わせが与えられると、組み合わせを提供します。
非再帰的な方法は、ループ インデックスiの指定された値の組み合わせを生成します。
私はこのコードで問題に取り組みました:
n = 4 および k = 3 でテストして動作しますが、k を 3 より大きい数値に変更すると動作しません。
それは(nk)という事実によるものですか?n = 4 の場合、k = 3 は 1 です。k > 3 の場合は 1 より大きくなりますか?
ありがとう。
python - 非再帰的な os.walk()
os.walk()
作品と同じように、非再帰的なウォークを行う方法を探していos.listdir()
ます。しかし、返品と同じ方法でos.walk()
返品する必要があります。何か案が?
前もって感謝します。
algorithm - 再帰を使用せずに再帰関数を書き換える
再帰呼び出しが簡単に実装されない、または望まれない設定で、既存のコードを書き直しています。(そして、Fortran 77では、知っておく必要があります。)必要な呼び出しを追跡するために最初からスタックを作成することを考えましたが、これは厄介なようで、配列にメモリを割り当てたくない場合は、再帰は深くありません。(Fortran 77が動的配列のサイズ設定もサポートしているとは確信していません。)
明らかに再帰的な関数を取得し、スタック上のスペースを無駄にすることなく非再帰的に書き換える方法に関する一般的な解決策に関する他の提案はありますか?
どうもありがとう、Old McSt
c++ - スターリング数を計算するための動的計画法のアプローチ
動的計画法を使用してスターリング数を決定する私の試みは次のとおりです。
次のように定義されています。
S(n,k) = S(n-1,k-1) + k S(n-1,k)、1 < k < n の場合
S(n,k) = 1、k=1 または k=n の場合
大丈夫そうですよね?単体テストを実行するときを除いて...
誰かが私が間違っていることを見ることができますか?
ありがとう!
ところで、再帰的な解決策は次のとおりです。