隨機排序一維陣列

2022-02-12 13:23:36 字數 1272 閱讀 1138

今天在csdn上看到乙個關於隨機數問題的帖子,忽然間想起以前寫過乙個隨機排序一維陣列的方法、於是開始「翻箱倒櫃」終於把它找出來了,呵呵 …

lz 原帖:

比如我現在有1到50這個50個數,每次迴圈我都去隨機這50個數,如果判斷,在隨機的時候產生的數不相等?也就是說我想把這個50個數的順序打亂,分別顯示出來??怎麼做???

我的跟帖:

public

void randsort(int

_num)

}

我寫的這個方法,為了避免相同的隨機數出現,中間sleep了一下,效率確實降低了不少,不過去掉sleep也不大礙。

另外在這個帖子上還看到兩個不一樣思路的方法、隨便分享一下:

方法一**//

作者 csdn 使用者名稱: baesky

class

program

int rslt

=new

int[

50];

random rand

=new

random();

for(

inti =49

; i

>=

0; i--)

console.writeline(

"consume milsec:"+

(datetime.now

-dt1).totalmilliseconds.tostring());

intline =0

;foreach

(int

t in

rslt)}}

當然、我感覺上面的方法開始部分還是有些累贅,不知大俠們是怎樣認為的???

他的大致思路是:隨機從乙個集合中取出乙個數字,然後依次存入陣列中,已達到隨機排序的目的。

方法二**//

作者csdn 使用者名稱:phil999

private

static

void

sort()

;int

keys

=new

int[arr.length];

random random

=new

random();

for(

inti =0

; i

<

keys.length; i++)

array.sort(keys, arr);

//arr 現在隨機了

}這個方法呢 是巧用了 array的sort方法。

更多方法請參見csdn原帖鏈結

將一維陣列中元素隨機打亂排序

從原list中每次隨機取一項,新增到新的list中,並在原list中刪除。這樣重複,直到原list為空為止。public static listgetrandomlist listinputlist return outputlist 用linqlistl new list l l.select a...

PHP陣列排序,一維陣列,二維陣列排序。

一維陣列排序 1 sort,rsort排序 r reverse表示翻轉,即為降序排列 通過鍵值排序。arr array 10,2,4,1,5,8,7,9 等效於 arr array 0 10,1 2,2 4,3 1,4 5,5 8,6 7,7 9 預設的排序,按鍵值公升序排序,鍵名被從新規定,例如1...

一維陣列氣泡排序

一維陣列氣泡排序判斷陣列是否非亂序.int main void int temp 因為sizeof是unsigned型別,為了避免編譯器警告,所以定義為unsigned型別.如果定義為int型別,對程式執行也無影響.unsigned int i j unsigned int flag 1 for i...