我試圖使用Matlab的randperm
和調用randperm = 5
生成1和5之間的隨機數。在Matlab中有序的隨機數
每次這給我一個不同的陣列,讓我們說,例如:
x = randperm(5)
x = [3 2 4 1 5]
我需要的矢量將被佈置成使得4和5是總是彼此相鄰和2始終是1和3之間...例如[3 2 1 4 5]
或[4 5 1 2 3]
。
所以基本上我有兩個不同長度的「塊」 - 1 2 3
和4 5
。塊的順序不是那麼重要,只是4 & 5月底在一起和2合1和3之間
[1 2 3 4 5]
[3 2 1 4 5]
[4 5 1 2 3]
[4 5 3 2 1]
有誰知道我可以做這個?
由於
使用'randperm'兩個塊和一個'randperm(2)'如何索引他們。 – Adriaan
由於您的可能組合數量非常有限,因此請從這些數組中創建一個數組,然後使用'randi'從中隨機選取一行。 –
它總是必須是'4 5'嗎?沒有可能的組合顯示'5 4'。 – beaker