【发布时间】:2016-03-20 14:38:52
【问题描述】:
我正在尝试将一个数组的值排列到另一个数组中。
所以array1,值(例如array1[3])需要根据值的大小进行排序,然后需要根据数字的大小分配一个从1到10的值。排名在 1 到 10 之间。
我尝试过选择排序:
public static int[] doSelectionSort(int[] arr){
for (int i = 1; i < arr.length; i++)
{
int index = i;
for (int j = i + 1; j < arr.length - 1; j++)
if (arr[j] < arr[index])
index = j;
int smallerNumber = arr[index];
arr[index] = arr[i];
arr[i] = smallerNumber;
}
除此之外,我不知道该去哪里。我尝试了二维数组,但这很令人困惑。 array1 将显示在 GUI 屏幕上的列中,但根据程序以随机顺序显示。但排名将显示在 GUI 中 array1 列中的每个值之外。排名不需要按顺序显示,但需要对array1的值进行排序,并在屏幕下一列的值旁边显示。
【问题讨论】:
-
你试过
Arrays.sort(array1);吗? -
是的,需要显示 1 到 10 的排名,但不按顺序显示。因此,如果 array1[1] 的值为 2 且 array1[2] 为 4....它将显示在排名列中:2,1。 1 为最高。干杯:)
-
这些值是唯一的吗?如果是这样,您可以将其复制到列表中,对其进行排序,然后使用 indexOf 方法?