Java - 排序结果

时间:2013-05-14 21:23:55

标签: java sorting

我有一个等式:A = b^2 + 4*c^2

我更改了'b'和'c'的值,如下所示:b=1,2,3,4,5,...c=1,2,3,4,5,... 我把它们放在等式中。

我想创建一个结果表(作为输出),如下所示:

      b  c  A
      1  1  5
      1  2  17
      2  1  8
      2  2  20
      4  1  20
      ........

但是,我希望将表从A的最小值分类到最大值。 请注意,可能会出现不同的b和c对给出相同的A. 我想为A的10个不同值创建这样的表。

我的问题是,当我尝试对表格进行排序时,我不知道如何将值A与正确的b和c值“链接”

2 个答案:

答案 0 :(得分:5)

您可以创建一个代表三个值然后排序的类。

class Tuple implement Comparable<Tuple>{

     int a, b, c;
     //....
     int compareTo(Tuple tuple) {
         return Integer.compare(a, tuple.a);
     }

}

Tuple[] tuples;
// ...
Arrays.sort(tuples);

答案 1 :(得分:1)

一种简单的方法:

创建一个3列数组,当您按A列排序时,请随身携带其余部分。

有很多种可能性。