這是我第一次發佈到這個博客。我是Java的新手,當用戶輸入一組值時,我遇到了使用冒泡排序的問題。以下是我的代碼;然而,我正在尋找更多的建議,然後回答,因爲我不會用答案來學習語言。用戶輸入int到數組然後使用冒泡排序來排序數字
感謝您的幫助,再次抱歉,如果我的代碼有點複雜。順便說一句,我剛開始學習Java,因此我將無法遵循非常複雜的編碼建議。
import java.util.Arrays;
public class bubbleSort{
public static void main(String[] arg){
java.util.Scanner input = new java.util.Scanner(System.in);
System.out.println("Enter total amount of numbers:");
int n = input.nextInt();
int [] numbers = new int[n];
System.out.println("Enter the numbers: ");
for (int i = 0; i < n; i++) {
numbers[i] = input.nextInt();
}
System.out.println(list(n));
bubbleSort(n);
System.out.println(list(n));
}
public static void bubbleSort(int[] n){
boolean flag;
do{
flag = false;
for(int i = 0; i < n.length - 1; i++){
if (n[i] > n[i + 1]){
int temp = n[i];
n[i] = n[i + 1];
n[i + 1] = temp;
flag = true;
}
}
} while (flag);
}
}
那麼,什麼是你的問題? – DavidPostill
「_我有一個問題_」你能解釋什麼是問題嗎?你的程序沒有運行?它會產生錯誤的結果嗎?這是怎麼回事? – csmckelvey
@ChiefTwoPencils這將在'if(n [i]> n [i + 1])'檢查期間導致ArrayIndexOutOfBoundsException。 ...哦,他刪除了他的評論。 – Tom