簡體   English   中英

[Processing 2.0]嘗試創建隨機整數數組,然后對它們進行冒泡排序

[英][Processing 2.0]Trying to create an array of random integers and then bubble sort them

我試圖在處理中提出一個隨機整數數組,然后使用冒泡排序對它們進行排序,但是我想先打印未排序的隨機整數列表,然后進行排序和打印,我也希望數組位於(1 -100)。 這是我編寫的嘗試此操作的代碼,但我認為可能還很遙遠。 感謝您的任何答復。

int[] arr = new int[10];


int min  = 1;
int max = 100;
int Random = int(random(min, max));
int R0 = int(random(min, max));
int R1 = int(random(min, max)); 
int R2 = int(random(min, max));
int R3 = int(random(min, max));
int R4 = int(random(min, max));
int R5 = int(random(min, max));
int R6 = int(random(min, max));
int R7 = int(random(min, max));
int R8 = int(random(min, max));
int R9 = int(random(min, max));



println ("The Length of the Array is: " + arr.length);
println ("The " + arr.length + " random numbers chosen between (" + min + " - " + max   + ") are: " + R0 + ", " + R1 + ", " + R2 + ", " + R3 + ", " + R4 + ", " + R5+ ", " + R6 + ", " + R7 + ", " + R8 + ", " + R9 + ".");
for (int i = 0; i <100;  i++)
 {  print((arr[i]= Random + i ) + ", ");

}

編輯:我想出的最終修訂版:

int Random = int(random(10, 100));

int[] array = new int[Random]; // RANDOM SIZE OF ARRAY
int min  = 10; // MINIMUM RANDOM INTEGER CHOSEN
int max = 100; // MAX RANDOM INTEGER CHOSEN

int temp;


for (int i=0; i<array.length; i++) {
  array[i] = (int)random(min,max);
}
println("The Amount of Numbers That Will Be Chosen Is: " + array.length);
println("The Unsorted Numbers Chosen Are Between (" + min + " - " + max + ").");
println();
println("The Numbers Are:");
println(array);
println();
println("The Sorting Begins");


  for (int i = 0; i < array.length; i++)   
{
  println();
  println("Step " + i);  // Prints the step of insertion using "i" as the counter

    for (int j = 0; j < i; j++)
  {
      print(array[j] + ", ");
      if (array[i] < array[j])
    {
        temp = array[i];
        array[i] = array[j];
        array[j] = temp;
        }
      }
      println();
   }

首先,為什么要為隨機數創建單個值。 您應該這樣做:

int[] iArr = new int[50];
for (int i=0; i<iArr.length; i++) {
  iArr[i] = (int)random(min,max);
}

使用上面的代碼,將創建一個由50個數組組成的數組,並用隨機數填充。

接下來,您需要打印未排序的:

System.out.println("Unsorted:");
for(int i=0; i<iArr.length; i++) {
  System.out.println(iArr[i]);
}

然后您進行氣泡排序,然后再次調用上述命令以按順序打印它們。

我也希望數組在(1-100)之間

提示:使用提供良好函數的RandomnextInt(int n)函數:返回一個偽隨機數,它從此隨機數生成器的序列得出的int值均勻地分布在0包含 )和指定值nexclusive )之間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM