(30) 配列要素をランダムにシャッフル

投稿者: | 2014/07/01

7,196 views

この記事は最終更新から 2210日 が経過しています。

要素数 10個の配列を作る。この配列 aの中身をシャッフルしてみたい。

octave:1> a = rand(1,10)
a =
   0.589408   0.922543   0.080395   0.102798   0.335572   0.778895   0.139366   0.189401   0.700688   0.344026

ここでは rand関数を使って配列を生成しているが、こちらはシャッフルされる側なので、ランダムである必要はない。

次に randperm で 1から 10までの値をランダムに並べた配列を作る。

octave:2> b = randperm(10)
b =
    2    6    1    5    7    3    8    4    9   10

これをインデックスとして使用し、先に作成した配列 aの要素を並び替える。

octave:3> c = a(b)
c =
   0.922543   0.778895   0.589408   0.335572   0.139366   0.080395   0.189401   0.102798   0.700688   0.344026

アクセス数(直近7日): ※試験運用中、BOT除外簡易実装済
  • 2025-11-14: 0回
  • 2025-11-13: 0回
  • 2025-11-12: 0回
  • 2025-11-11: 0回
  • 2025-11-10: 0回
  • 2025-11-09: 0回
  • 2025-11-08: 0回
  • コメントを残す

    メールアドレスが公開されることはありません。 が付いている欄は必須項目です