所以我有类似的东西
011 - 50
111 - 75
001 - 25
这是我的计划:
public class Urut {
public void Sort (int [][] input1,int[] input2){
for (int i = 0; i < 5; i++){
for (int j = 0; j < 10; j++){
for (int k = 0; k < 10-1; k++){
if (input2[k] > input2[k+1]){
int t;
t = input1[k][i];
input1[k][i] = input1[k+1][i];
input1[k+1][i] = t;
}
}
}
}
for (int i = 0; i < 10; i++){
for (int j = 0; j < 10-1; j++){
if (input2[j] > input2[j+1]){
int te = input2[j];
input2[j] = input2[j+1];
input2[j+1] = te;
}
}
}
for (int i = 0; i < 10; i++){
for (int j = 0; j< 5; j++){
System.out.print(input1[i][j]);
}
System.out.println(" " + input2[i]);
}
}
}
我想根据右边的值(一维数组)对2D数组(0和1)进行排序。有人能帮助我吗?
答案 0 :(得分:0)
让我猜一下!
它不是2D array
,而是map
。好的,2D array
有两行。第一行是这样的:
011, 111, 001
,第二个是这样的
50, 75, 25
您想要排序第一行,考虑第二行。因此,对于您的示例,它将是:
由于001, 011, 111
, 25, 50, 75
如果我是对的,答案就在这里:How to sort a Map on the values in Java?
如果我错了,请添加评论,我会删除此答案。
编辑: