Skip to content

Commit ce67e76

Browse files
author
phishman3579
committed
Found a problem in the comparator of the Interval Tree
git-svn-id: https://java-algorithms-implementation.googlecode.com/svn/trunk@435 032fbc0f-8cab-eb90-e552-f08422b9a96a
1 parent ddcea2c commit ce67e76

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

src/com/jwetherell/algorithms/data_structures/IntervalTree.java

+5-3
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,13 @@ public int compare(IntervalData<?> arg0, IntervalData<?> arg1) {
3333
return -1;
3434
if (arg1.start < arg0.start)
3535
return 1;
36+
/*
3637
// Then end
3738
if (arg0.end < arg1.end)
3839
return -1;
3940
if (arg1.end < arg0.end)
4041
return 1;
42+
*/
4143
// if they have the same start and end they must be equal
4244
return 0;
4345
}
@@ -55,11 +57,13 @@ public int compare(IntervalData<?> arg0, IntervalData<?> arg1) {
5557
return -1;
5658
if (arg1.end < arg0.end)
5759
return 1;
60+
/*
5861
// Then start
5962
if (arg0.start < arg1.start)
6063
return -1;
6164
if (arg1.start < arg0.start)
6265
return 1;
66+
*/
6367
// if they have the same start and end they must be equal
6468
return 0;
6569
}
@@ -82,13 +86,11 @@ protected static final <O extends Object> Interval<O> createFromList(List<Interv
8286
Interval<O> newInterval = new Interval<O>();
8387
int half = intervals.size() / 2;
8488
IntervalData<O> middle = intervals.get(half);
85-
System.out.println(middle);
8689
newInterval.center = ((middle.start + middle.end) / 2);
8790
List<IntervalData<O>> leftIntervals = new ArrayList<IntervalData<O>>();
8891
List<IntervalData<O>> rightIntervals = new ArrayList<IntervalData<O>>();
8992
for (IntervalData<O> interval : intervals) {
90-
System.out.println(interval);
91-
if (interval.end < newInterval.center) {
93+
if (interval.end < newInterval.center) {
9294
leftIntervals.add(interval);
9395
} else if (interval.start > newInterval.center) {
9496
rightIntervals.add(interval);

0 commit comments

Comments
 (0)