你這個問題有歧義誒,到底是 把數隨機插入到陣列中,還是 在陣列中插入的1~100隨機數
樓上是第一個,結果b陣列值為1~100排序的數。
下面是第二個,結果數字是隨機的,但插入是順序插入的程式碼如下:
int[] arr = new int[100];
Random r = new Random(DateTime.Now.Millisecond);
for(int i=0;i
{
int temp = r.Next(1, 100);
while(true){
if (Array.IndexOf(arr, temp) == -1)
arr[i] = temp;
break;
}
else
temp = r.Next(1, 100);
System.Console.WriteLine(arr[i]);
System.Console.Read();
這個演算法效率會有點低,為了防止重複,迴圈越到後面嘗試的隨機數會越來越多。
可以改為多建立一個值為1~100的陣列,隨機取裡面的值放到新陣列,然後刪去,這個就自己去實現吧。
你這個問題有歧義誒,到底是 把數隨機插入到陣列中,還是 在陣列中插入的1~100隨機數
樓上是第一個,結果b陣列值為1~100排序的數。
下面是第二個,結果數字是隨機的,但插入是順序插入的程式碼如下:
int[] arr = new int[100];
Random r = new Random(DateTime.Now.Millisecond);
for(int i=0;i
{
int temp = r.Next(1, 100);
while(true){
if (Array.IndexOf(arr, temp) == -1)
{
arr[i] = temp;
break;
}
else
{
temp = r.Next(1, 100);
}
}
System.Console.WriteLine(arr[i]);
}
System.Console.Read();
這個演算法效率會有點低,為了防止重複,迴圈越到後面嘗試的隨機數會越來越多。
可以改為多建立一個值為1~100的陣列,隨機取裡面的值放到新陣列,然後刪去,這個就自己去實現吧。