そして、ランダムに私は上でも、真ん中でも、下でも意味しません。検索はランダムにソートされた結果を返す必要があります。
たとえば、viエディタで「失敗」を検索しています。ランダムにソートされた結果が欲しいです。
nまたはN(または他のキー)を押すと、ランダムにソートされたメッセージを受け取る必要があります。
答え1
ランダムに一致する項目を見つける最も簡単な方法は、検索を実行してランダムな数字を入力するn
かN
(ランダム?)を押すことです。これはすべてのviバリアントで機能します。
非常に単純な疑似乱数ジェネレータは、次を選択することです。中サイズ~のため窒素MとNが比較的少数の項の場合、「任意」の開始値(S)を選択した後(S + M)%Nが次の値になります。一般に、MがNより大きくなることを望む。 NとMの間に共通の引数がある場合、すべての可能な項目を含まないループが生成される可能性があります。最高のパフォーマンスを得るには、MはN / 2と3 N / 2の間でなければなりません。
したがって、追加の利点を得るために、適度に大きい素数(おそらく一致する数の推測よりも大きくなる可能性があります)を選択し、それをn
viのエイリアスキーに割り当てることができます。これにより、すべての一致を「ランダムに」繰り返すコマンドが提供されます。