問題タブ [shuffle]

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

vb.net - 乱数だが繰り返さない

50 未満の乱数を生成したいのですが、その数が生成されたら、再度生成できないようにしたいと考えています。

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

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

arrays - Scala配列でJava Collections.shuffle()を使用するには?

ランダムに並べ替えたい配列があります。Java には、List の要素をランダムにシャッフルできる Collections.shuffle() メソッドがあります。配列でも使用できます。

これを Scala 配列で使用しようとしましたが、Scala インタープリターは長い回答で応答します。

ここで正確に何が起こっているのですか?このため、特別なフラグ (-Xno-varargs-conversion) を使用してコードをコンパイルしたくありません。

では、Scala 配列で Java の Collections.shuffle() を使用するにはどうすればよいでしょうか?

その間、Scala で独自のシャッフル メソッドを作成しました。

配列をその場でシャッフルし、利便性のために配列自体を返します。

0 投票する
13 に答える
49448 参照

c# - Random と OrderBy を使用するのは良いシャッフル アルゴリズムですか?

Coding Horrorで、さまざまなシャッフル アルゴリズムに関する記事を読みました。リストをシャッフルするために、どこかで人々がこれを行っているのを見たことがあります。

これは良いシャッフル アルゴリズムですか? 正確にはどのように機能しますか?これは受け入れられる方法ですか?

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

perl - Perl でまったく同じ方法で 2 つの配列をシャッフルするにはどうすればよいですか?

Perl でまったく同じ方法で 2 つの配列をランダムにシャッフルする方法を知っている人はいますか? たとえば、次の 2 つの配列があるとします。

シャッフル前: 配列 1: 1, 2, 3, 4, 5 配列 2: a, b, c, d, e

シャッフル後: 配列 1: 2, 4, 5, 3, 1 配列 2: b, d, e, c, a

したがって、各配列のすべての要素は、対応する要素にバインドされます。

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

delphi - TListbox の並べ替え -- 高値と安値

わかりました、43,000 行を表示するために必要な場合がある TListBox があります。

私は知っています、これはほとんど意味がありませんが、そこにあります.

現在の問題は次のとおりです。

組み込みの Sort メソッドをその Compare コールバック関数と共に使用すると、ほぼ永遠に、数分ほどかかります。

そこで、リストボックスから文字列を抽出して、ShortStrings の単純な古い動的配列に入れ、それに対して QuickSort() を実行します。これには約 3 秒かかります。うわー私は思う!

少し考えてみると、QuickSort がこれらすべての文字列を移動していることがわかりますが、これは必要ありません。そのため、コードを変更して、文字列へのポインターまたはインデックスを移動するだけにすると、ほら、並べ替えが再びはるかに高速になります。 43,000 アイテムを並べ替えるのに 1 秒もかかりません。大勝利ですよね?

しかし、LB.Items.Add() または LB.Items.Assign を実行して、並べ替えられた文字列をリストボックスに移動すると、30 秒ほどかかります。BEgin/EndUpdate が発生しても。コードをトレースすると、delete() Insert() INsertObject() で多くの処理が行われ、正当な理由もなく Windows メッセージが飛んでいることがわかります。

しばらくすると、LB.TStrings にすべての文字列が含まれていることがわかります。QuickSorted() 配列の中でそれらをシャッフルする必要があるだけです。それは些細なことで、いくつかのポインタを移動するだけです。

しかし、未加工の TStringList ポインタを設定する目に見える方法はありません。いいえ、Exchange() は本当に遅いです。

TString 文字列ポインタに到達する方法はありますか? これは些細なはずですが、私にはわかりません。

ありがとう、

ジョージ

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

algorithm - O(1)補助スペースを使用して配列を特定の順序に並べ替える方法は?

OrderElements次の関数を実装するにはどうすればよいですか?

線形の余分なスペースを使用できる場合は簡単ですが、一定の余分なスペースのみで実行できますか?つまり、chars要素をインプレースで直接並べ替えることができますか?

PS:これは試験問題ではありませんでした。私は実際にこの関数が必要です。

明確化:要素の望ましい最終的な順序について誤解があるようです。chars例の結果の配列には、元の配列を参照して、次の要素が含まれている必要があります。

これは

0 投票する
31 に答える
502668 参照

java - 配列のランダムシャッフル

次の配列をランダムにシャッフルする必要があります。

それを行う機能はありますか?

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

matlab - このMATLABコードはどのように機能しますか?(確率とランダムシーケンス)

このコードは、記事「Never-endingShuffledSequence 」のコメントで見ました。基本的な前提は理解していますが、どのように機能するのかわかりません。私が必要とする最大の説明は、whileループの最初の2行です。

(MATLABで記述されているため、このコードがどのように機能するかを推測することしかできません。)

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

c++ - それのC ++ベクトルランダムシャッフル部分

ベクトル内の特定の割合の要素をシャッフルする最良の方法は何ですか?

ベクトルの 10% または 90% をシャッフルしたいとします。必ずしも最初の 10% とは限りませんが、全面的には 10% にすぎません。

ティア

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

c++ - Knuth シャッフル アルゴリズムが可能な限り公平であることを確認する

私が取り組んでいる C++ プロジェクトにKnuth シャッフルを実装しています。私はシャッフルから最も偏りのない結果を得ようとしています (そして、私は (疑似) 乱数生成の専門家ではありません)。これが最も偏りのないシャッフルの実装であることを確認したいだけです。

draw_tはバイト型です ( typedef'd to unsigned char)。itemsリスト内のアイテムの数です。以下のコードを含めましたrandom::get( draw_t max )

私が使用しているランダム関数は、モジュロ バイアスを排除するように変更されています。RAND_MAXに割り当てられrandom::_internal_maxます。