这是矩阵,其中u比较第1行和第2行第1列值,如果它等于u
打印并移动到第二列做同样的,如果不相等那么打印低值和下一个第三列做同样的,现在比较第二和第三行做同样的事情。为完整矩阵做这个按升序排列..如何使用比较类来解决这个问题..请帮助我
在此处输入代码:int a [] [] = {{3,6,5},
{3,5,7},
{2,1,6},
{2,1,3},
{7,8,5},
{6,3,2}};
O / P矩阵
[2 1 3]
[2 1 6]
[3 5 7]
[3 6 5]
[6 3 2]
[7 8 5]
答案 0 :(得分:0)
快速解决方案可能如下
import java.util.Arrays;
import java.util.Comparator;
class Compare2Darray {
public static Comparator<Integer[]> getComparator() {
return new Comparator<Integer[]>() {
public int compare(Integer[] o1, Integer[] o2) {
for (int i = 0; i < o1.length; i++) {
if (o1[i].compareTo(o2[i]) != 0) {
return o1[i].compareTo(o2[i]);
}
}
return 0;
}};
}
public static void main (String[] args) {
Integer a[][] = {{3,6,5}, {3,5,7}, {2,1,6}, {2,1,3}, {7,8,5}, {6,3,2}};
Arrays.sort(a, getComparator());
for (int i = 0; i < a.length; i++) {
System.out.println(Arrays.toString(a[i]));
}
}
}