0

只是一个快速的问题。

哪个选项会更有效?

  1. 对 2D 数组进行排序(数组第 1 维中的每个值都链接到第 2 维中的值,因此它们必须被同等排序 [value and ID number] )。

或者

  1. 对一维数组进行排序,然后将值与另一组值进行比较(使用线性搜索)以检查它们是否匹配(以查找与每个值对应的 ID 号)。

所有的值都保证是不同的,所以没有重复数字的问题。就算有也没关系。

有没有办法找出这两种方法在调试器中的效率?

谢谢大家的时间。=]

塞布

4

1 回答 1

0

我认为在使用比较器的帮助下使用二维数组排序技术会更有效率。在这种技术中,数组按每个 2D 数组的一个比较单位一次性排序,在第二种方法中,您首先对 1D 数组进行排序,然后再次搜索以映射关联的值。

示例:在 java 中对 String 的二维数组进行排序

您可以通过在排序之前和排序后打印上述两种方法的时间戳来尝试自己排序所需的时间。

于 2012-09-04T06:01:47.987 回答