問題タブ [nested-loops]

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 投票する
2 に答える
332 参照

bash - Bash ネストされたループ、日付と数字の混合

さまざまな日付と番号が関連付けられた一連のコマンドを出力しようとしています。毎時間例えば。

ループで実行しようとしている出力は次のとおりです。

したがって、基本的に上記は、一意の 4 桁の ID を持つ特定の日ごとに 24 回実行される出力を生成します。

バッチ番号は一意である必要があるため、ネストされたループを持つことを考えていました。

誰でも助けることができますか?

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

unix - Unix-ネストされたループ。1つのループで解凍し、別のループでディレクトリ内の各ファイルを検査します

大量のtarファイルをループして、抽出したファイルを新しいフォルダーに移動し、検査して削除してから、次のtarに移動しようとしています。

コードは以下のとおりです。

ネストされたループに到達すると、x個の可能性をすべて表示するかどうかを尋ねられます。明らかに何かがうまくいかない。何か案は?

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

loops - ネストされた while ループの golfscript

ゴルフスクリプトでループが壊れている間にネストされていますか、それとも使用方法がわかりませんか?

Q を 5 から 0 に反復し、反復ごとに Z を 10 から 0 に反復します。単一のループは個別にうまく機能し、自己完結型のように見えます (操作間のスタックに依存していません)。

出力:

しかし、Z ループを Q ループ内に配置すると、奇妙な結果が得られます。

出力:

Z が 2 回出力したことに基づいて、現在の条件付きブロックは 1 つしかないように見え、「while」を実行するとそれが上書きされます。

いずれにせよ、golfscript でこの偉業を達成するにはどうすればよいでしょうか?

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

javascript - javascript:for(i in str)、ネストされた、FF外の奇妙な結果?

私は今かなり混乱しています、誰かが私にこれを説明できますか?多分それは私が気づかない小さなものかもしれませんが、なぜこれが私が期待するように結果として生じないのかについて私は混乱しています。

発生している問題を示すサンプルを作成しました...

サンプル1

さて、Chromeでの私の結果は次のとおりです。

FireFoxには次のようなものがあります:(これは私が期待した結果です)

IE8の結果は次のとおりです。

ここで何が起こっているのか誰かが私に説明できますか?重要な何かを見逃したことがありますか?

注:この例のように、ブラウザ間で文字列を配列に変換できます。"abc".split("")これは文字列ではなくなり、出力すると配列として出力されることに注意してください。a,b,c

0 投票する
8 に答える
64231 参照

algorithm - セット内の数字のどの組み合わせが特定の合計になるかを調べます

私は、一部の会計士が抱えている一般的な問題を解決するのを支援する任務を負っています-トランザクションのリストと合計デポジットを考えると、どのトランザクションがデポジットの一部ですか?たとえば、次の番号のリストがあるとします。

そして、私は私の総預金がであることを知っています、私はそれがとトランザクション10.50で構成されていることを簡単に見ることができます。しかし、100のトランザクションと数百万の預金を考えると、それはすぐにはるかに困難になります。8.002.50

強引な解決策をテストする際に(実用的であるには時間がかかりすぎる)、2つの質問がありました。

  1. 約60の数字のリストを見ると、妥当な合計で12以上の組み合わせが見つかるようです。私は、単一の組み合わせが私の合計、またはおそらくいくつかの可能性を満たすことを期待していましたが、常にたくさんの組み合わせがあるようです。これがなぜであるかを説明する数学の原理はありますか?中程度のサイズの乱数のコレクションを考えると、必要な合計に達する複数の組み合わせを見つけることができるようです。

  2. 私はこの問題に対して力ずくの解決策を構築しましたが、それは明らかにO(n!)であり、すぐに制御不能になります。明らかなショートカット(合計よりも大きい数を除外する)とは別に、これを計算する時間を短縮する方法はありますか?

私の現在の(超低速)ソリューションの詳細:

詳細量のリストは最大から最小にソートされ、次のプロセスが再帰的に実行されます。

  • リストの次の項目を取得し、それを現在の合計に追加すると、合計が目標と一致するかどうかを確認します。含まれている場合は、現在のチェーンを一致として取っておきます。目標を下回っている場合は、現在の合計に追加し、詳細金額のリストから削除してから、このプロセスを再度呼び出します。

このようにして、より大きな数をすばやく除外し、リストを考慮する必要のある数だけに減らします。しかし、それはまだnです!より大きなリストは決して終わらないように見えるので、これをスピードアップするために取ることができるかもしれないショートカットに興味があります-リストから1つの数字を削除するだけでも、計算時間が半分になると思います。

ご協力いただきありがとうございます!

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

php - 文字列と内部の配列を含む配列をループするPHP

これは基本的なループの質問ですが、ひねりが加えられているため、簡単なものが欠けている可能性があります-事前にお詫びします...

配列$testoutputから結果を取得しようとしています-3つの配列で埋められています:

次のコードを実行します。

戻り値:

次のコードで2番目のネストされたループを追加します。

結果:

上記の文字列をすべて再調整しても問題ありませんが、ネストされた配列の第3レベルから値を返す方法がわかりません。

これを行う簡単な方法はありますか?

よろしくお願いします。

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

c++ - 異なる定数を持ついくつかのバージョンの関数を作成する C++ テンプレート

テンプレートを使用して、定数パラメーターのみが異なる関数のインスタンスをいくつか作成できますか? このパラメーターの選択肢の数は固定されています。例えば

書き直したくありません (上限は 1..32 の 2 乗)

のセットに

しかし、テンプレート化された

その後

これは C++ テンプレートで可能ですか?

== 詳細モード ==

そのようなコードを含むC++ファイルがたくさんあります

これは単なる例ですが、次のとおりです。

  • ループを交換できません。
  • 2 つの外側のループ、i & j には多くの反復があります
  • 2 つの内部 (ネストされた)、k& l には少しの繰り返しがあり、その回数はに渡され、function_typicalそれらのセットは固定されています。たとえば、const_1 と const_2 は (2,3)、(4,5) のペアの 1 つです。 、(3,5)。許容されるペアの合計数が 10 未満です。

このコードの問題は、速度が非常に遅いことです。このコードの const_1 と const_2 を数値定数に修正すると、コンパイラは最適化で素晴らしい仕事をします (たとえば、すべての k とすべての l の反復を展開し、いくつかのスマートな仕事を行います)。

しかし、(const_1 と const_2) ペアのすべてのセットのすべての典型的な関数を物理的に変更することはできません。また、コンパイラの定数プロパゲータは、セット情報の定数を関数に伝搬できません (これはネットワーク サーバーであり、クライアントは固定セットから const_1 と const_2 のペアを選択します)。

だから私はコンパイル時にペアのすべての選択肢を知っています。しかし、すべての関数を手作業で書き直す機会はありません。

== 詳細モード オフ ==

前もって感謝します

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

c - パスカルの三角形のヘルプ

次のコードスニペットはパスカルの三角形を印刷しています。インターネットからこのスニペットを入手しましたが、binの数式を取得できません。誰かがそれを手伝ってくれるなら、私は感謝します\

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

bash - シェル:ネストされた for ループ

どういうわけか、次のスクリプトでは、 の値が$i
3 行目で展開されていません。

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

optimization - SSE を使用した有限差分の最適化

次のループを最適化するために SSE (1,2,3,4,...) を使用できるかどうか疑問に思っています。

この[j*size + k]イディオムは、メモリのブロックを多次元配列であるかのように扱うために使用されます。

残念ながら、-ftree-vectorizeGCC (4.5) のフラグは、ループが SIMD タイプの最適化に適しているとは考えていません。-ftree-vectorize(ただし、最も単純なループ以外を最適化するのを見たことはありません。)

ループのパフォーマンスを改善する方法が他にもたくさんあることは承知していますが (OpenMP、アンローリング、インプレース アルゴリズムなど)、SIMD を使用できるかどうかを特に知りたいと思っています。私はおそらく、具体的な実装とは対照的に、そのようなループをどのように変換できるか (もしあれば) の一般的な概要にもっと興味があります。