由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 请教一个关于java comparator的问题
相关主题
Bloomberg phone interview 面经职业杯另外一道
问一道amazon的Onsite题一道老题
how to determine if two integers are equal without using ancareercup上这道题我竟然没看懂
一FG家常见题这题怎么做?
L家的高频题merge k sorted arrays giving iterators求讨论!算法题:两列找共同元素有O(n)的算法吗?
Google电话面试题目Given an array of N integers from range [0, N] and one is missing. Find the missing number.
一个实际的排序问题问一道老题
[合集] Google电话面试题目讨论一个题目
相关话题的讨论汇总
话题: integer话题: treeset话题: comparator话题: i2话题: i1
进入JobHunting版参与讨论
1 (共1页)
g*******7
发帖数: 16
1
打算用treeset实现一个最小堆。可是用了自己写的comparator以后,大数(如10000)
被认为是不同的数,因此不能去重复。请问为什么呢?
public class Test {
public static void main(String[] args) {
Set treeset = new TreeSet<>(new MyComparator());
Integer[] array = new Integer[args.length];
for (int i = 0 ; i < args.length ; i ++ ) {
array[i] = Integer.valueOf(args[i]);
treeset.add(array[i]);
}
for (Integer i : treeset) {
System.out.print(i + " ");
}
}
public static class MyComparator implements Comparator {
@Override
public int compare(Integer i1, Integer i2) {
if (i1 < i2) {
return -1;
} else if (i1 == i2) {
return 0;
} else {
return 1;
}
}
}
}
w**z
发帖数: 8232
2
Java == compares reference, use equals instead.

【在 g*******7 的大作中提到】
: 打算用treeset实现一个最小堆。可是用了自己写的comparator以后,大数(如10000)
: 被认为是不同的数,因此不能去重复。请问为什么呢?
: public class Test {
: public static void main(String[] args) {
: Set treeset = new TreeSet<>(new MyComparator());
: Integer[] array = new Integer[args.length];
: for (int i = 0 ; i < args.length ; i ++ ) {
: array[i] = Integer.valueOf(args[i]);
: treeset.add(array[i]);
: }

j**********r
发帖数: 3798
3
8位以下可以过,高了应该不行。

【在 w**z 的大作中提到】
: Java == compares reference, use equals instead.
z**********e
发帖数: 91
4
直接collections.reverseorder()行么。。
g*******7
发帖数: 16
5
多谢,用equals可以了

【在 w**z 的大作中提到】
: Java == compares reference, use equals instead.
1 (共1页)
进入JobHunting版参与讨论
相关主题
讨论一个题目L家的高频题merge k sorted arrays giving iterators求讨论!
问道题,谁给个效率高点的解法Google电话面试题目
a[i] + b[j] = c[k] 的题有靠谱的答案不?一个实际的排序问题
菜鸟问个two sum的变型题[合集] Google电话面试题目
Bloomberg phone interview 面经职业杯另外一道
问一道amazon的Onsite题一道老题
how to determine if two integers are equal without using ancareercup上这道题我竟然没看懂
一FG家常见题这题怎么做?
相关话题的讨论汇总
话题: integer话题: treeset话题: comparator话题: i2话题: i1