【发布时间】:2018-03-29 16:37:45
【问题描述】:
我之前使用 BubbleSort 方法创建了一个程序,该方法用于对已经存在的列表中的数字进行排序,但是,我很难尝试操纵该程序以允许用户输入要排序的数字列表。到目前为止,我有:
import java.util.Scanner;
public class MedianValue {
public static void main(String[] args) {
//use scanner to input list of numbers to sort
Scanner scan = new Scanner(System.in);
int[] numbers = new int[] {scan.nextInt()};
//nested for loop
//outer loop just iterating
//inner loop going through and flipping
//checking if out of order (if statement)
int counter = 0;
//outer loop: keep doing this until it's sorted
for(int i = 0; i < numbers.length - 1; i = i + 1)
//put in a inner loop number.length times minus one because we don't want to swap the last element
for(counter = 0; counter < numbers.length - 1; counter = counter + 1)
{
if (numbers [counter] > numbers [counter + 1])
{
int temporary = numbers [counter];
numbers [counter] = numbers [counter + 1];
numbers [counter + 1] = temporary;
}
}
for(int i =0; i < numbers.length; i = i + 1)
{
System.out.print(numbers[i] + " ");
}
}
}
但是,在这个程序中,程序不是对输入的数字进行排序,而是简单地打印用户输入的第一个数字。我不确定是否需要移动我的扫描仪功能的放置位置,或者在循环中添加它以便它按照我想要的方式对所有数字进行排序。如果是这种情况,我不知道在哪里更改程序。
【问题讨论】: