[ 來源:
.Net教程 | 作者:
.Net教程 | 時間:
2008-2-22 |
去論壇]
-
-
早上想到另一個方法,可能更合適,昨天的方法會有邊界問題,比如2後面一定是跟1
新的方法如下
int[] NUMList=new int[20]...{1,2,3,4,5,6,7,8,9,10,.....20};
private Random random=new Random;
public void GetRandom(ref int[] nUMList)
...{
int index;
int chang;
for(int iCount=19;iCount>0;iCount--)
...{
index=random.Next(0,iCount);
chang=nUMList[index];
numList[index]=nUMList[iCount];
nUMList[iCount]=chang;
}
}
相當與對數組做隨機交換,時間長度為0(n)