問題タブ [iteration]

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

python - タプルのリストを辞書に変換する

次のようなタプルのリストがあります。

最初のアイテムでこのキーイングを反復したいので、たとえば、次のように出力できます。

最初のアイテムがタプルをループするのと同じかどうかを追跡するためにアイテムを保持せずに、どうすればこれを行うことができますか? これはかなり面倒です(さらに、最初にリストをソートする必要があります)...

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

java - プリミティブ配列の最新の for ループ

プリミティブ配列の for ループ間にパフォーマンスの違いはありますか?

推定:

また :

テスト結果

私は実際にそれをプロファイリングしました:

したがって、少なくとも私の Mac OSX JVM 1.5 では、最新のループの方が実際には高速に実行されます。

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

c# - C# で反復処理中に列挙可能なコレクションから項目を変更または削除する方法

データ テーブルからいくつかの行を削除する必要があります。コレクションを反復処理中に変更するのはよくないと聞いたことがあります。したがって、行が削除の要求を満たしているかどうかを確認してから削除済みとしてマークする for ループの代わりに、最初にデータ テーブルを反復処理してリスト内のすべての行を追加し、次にリストを反復処理してマークを付ける必要があります。削除する行。この理由は何ですか? (行リストを使用する代わりに) どのような代替手段がありますか?.

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

c# - Parallel.For に似た既存の LINQ 拡張メソッド?

重複の可能性:
IEnumerable<T> の foreach に相当する LINQ

ienumerable の linq 拡張メソッドは非常に便利ですが、何も返さずに列挙内の各項目に計算を適用するだけの場合は、それほど役に立ちません。だから、おそらく正しい方法が欠けているだけなのか、それとも組み込みバージョンが利用可能であればそれを使用したいので本当に存在しないのかと思っていましたが、見つけられませんでした:-)

.ForEach メソッドがどこかにあると断言できたのですが、まだ見つけていません。それまでの間、他の人に役立つ場合に備えて、独自のバージョンを作成しました。

使用法は次のとおりです。

myEnumerable.For<MyClass>(delegate(MyClass item) { item.Count++; });

0 投票する
7 に答える
2160 参照

recursion - 簡単な再帰アルゴリズムの反復バージョン

非常に単純な質問があると思います。この問題は、再帰関数で非常に簡単に解決できますが、繰り返し解決することはできませんでした。

次のようなブール行列があるとします。

母:

これが通常のブール行列ではないことはわかっていますが、私の例では役に立ちます。そこには一種のゼロパスがあることに注意してください...

このマトリックスとゼロが格納されているポイントを受け取り、同じ領域内のすべてのゼロを 2 に変換する関数を作成したい (マトリックスは、最初はブール値であっても任意の整数を格納できると仮定します)

(ペイントやその他の画像エディターでゾーンをペイントするときと同じように)

この行列 M と右上隅のゼロの座標で関数を呼び出すと、結果は次のようになります。

さて、私の質問は、これを繰り返し行う方法です...あまり台無しにしないことを願っています

前もって感謝します!

マヌエル

ps: 関数を C、S、Python、または疑似コードで示していただければ幸いです:D

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

c++ - ベクトルの繰り返しと関数の呼び出し

別のクラス オブジェクトのベクトルをメンバーとして持つクラスがあります。このクラスの多くの関数では、ベクター内のすべてのオブジェクトに対して同じ操作を行う必要があります。

私はコードを単純化し、すべての関数で他のベクトルを複製しない方法を見つけたいと考えています。

関数へのポインターを受け取り、ベクトルのすべてのメンバーで指定された関数を呼び出す関数を作成することを検討しました。しかし、C++ で関数へのポインターを使用することが良い考えかどうかはわかりません。

functor とfunctionoidについても考えていますが、関数ごとにクラスを作成する必要があり、やり過ぎのように思えます。

別の可能な解決策は、文字列を受け取り、文字列に従ってコマンドを呼び出す関数を作成することです。

ただし、動作が遅くなる可能性があり (単なる関数呼び出しではなく不要な文字列が作成される)、関数のシグネチャが異なる場合にも問題が発生します。

それで、あなたは何をお勧めしますか?今のままでいいのでしょうか?

編集:ブースト(古いコンパイラ)ではなく、STLのみを使用できます。

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

groovy - Groovy での findAll コレクション クロージャの使用

findAll クロージャーを使用する必要がある「セット」があります。Set には、プリミティブ値だけでなく、オブジェクトが含まれています。たとえば...私は従業員オブジェクトのセットを持っており、従業員の属性によってその従業員オブジェクトのセットの要素を反復して取得する必要があります。

何らかの理由で、findAll クロージャーは私のクローズを無視しているようで、空のセットを返します。

これが私の構文です。

0 投票する
7 に答える
71588 参照

java - Java int[][] 配列 - 値の反復と検索

int[][]小さなグリッドの座標を表す' ' の形式の配列があります。各座標には独自の値が割り当てられています。例array[0][4] = 28……

2 つの質問があります。まず、保存されているすべての値をどのように反復処理しますか。次に、値を入力して、グリッド内の特定の座標を返すことができるようにしたいと考えています。これにアプローチする最良の方法は何ですか?

助けてくれてありがとう!

0 投票する
14 に答える
11208 参照

language-agnostic - 再帰か反復か?

私は再帰が大好きです。私はそれが物事を非常に単純化すると思います。別の人は同意しないかもしれません。コードも読みやすくなっていると思います。ただし、C# などの言語では、LISP ほど再帰が使用されていないことに気付きました (ちなみに、LISP は再帰のために私のお気に入りの言語です)。

C# などの言語で再帰を使用しない正当な理由があるかどうかを知っている人はいますか? 繰り返しよりも高価ですか?

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

javascript - jQuery.each()utilで次の反復にスキップする方法は?

要素の配列を反復処理しようとしています。jQueryのドキュメントには次のように書かれています。

jquery.Each()ドキュメント

false以外を返すことは、forループのcontinueステートメントと同じであり、すぐに次の反復にスキップします。

'returnnon-false;'を呼び出してみました。および'非偽;' (戻り値なし)どちらも次の反復にスキップしません。代わりに、それらはループを壊します。私は何が欠けていますか?