randperm

randperm

randperm是matlab函式,功能是隨機打亂一個數字序列。其內的參數決定了隨機數的範圍。

函式簡介

函式功能:隨機打亂一個數字序列。

語法格式:

y = randperm(n)

y是把1到n這些數隨機打亂得到的一個數字序列。

:rand相關函式

程式示例

在FreeMat中:

--> randperm(5)

ans = 2 4 1 5 3

--> randperm(3)

ans = 2 3 1

--> randperm(5)

ans = 2 5 1 3 4

--> randperm(4.5)

ans = 5 3 1 2 4

在Matlab中:

示例一:

>> randperm(5)

ans = 2 3 4 1 5

>> randperm(3)

ans = 2 1 3

>> randperm(5)

ans = 4 5 2 3 1

>> randperm(4.5)

Warning: Size vector should be a row vector with integer elements.

> In randperm at 13

ans = 3 1 2 4

示例二:

A = [1, 2, 3; 4, 5, 6; 7, 8, 9; 10, 11, 12]

rowrank = randperm(size(A, 1)); % 隨機打亂矩陣的行數

B = A(rowrank, :)

一個可能的輸出結果:

A =

1 2 3

4 5 6

7 8 9

10 11 12

B =

1 2 3

7 8 9

4 5 6

10 11 12

示例三:

A = randperm(6,3)

[4 2 5] %結果為隨機生成,具體執行結果可能不同

randperm的其他方式

如在C語言中實現n個數的隨機排列應按照一下步驟

step 1: 隨機生成n個小數

step 2: 對n個小數進行排序

step 3: 在新序列對應在原序列的位置索引,即為一個隨機排列。

相關詞條

相關搜尋

熱門詞條

聯絡我們