Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void union(Range r){
- for(int i = 0; i < rangeSet.size(); i++){
- if(!rangeSet.get(i).overlaps(r)){
- rangeSet.add(r);
- }
- else if(rangeSet.get(i).overlaps(r)){
- for(int j = i+1; j < rangeSet.size(); j++){
- if(rangeSet.get(j).overlaps(r)){
- rangeSet.set(i,(Math.min(rangeSet.get(i).getMinimum(),rangeSet.get(j).getMinimum()),(Math.max(rangeSet.get(i).getMaximum(),rangeSet.get(j).getMaximum())));
- rangeSet.remove(j);
- return;
- }
- }
- rangeSet.set(i,(Math.min(r.getMinimum(),rangeSet.get(i).getMinimum()),(Math.max(r.getMaximum(),rangeSet.get(i).getMaximum())));
- }
- if(r.contains(rangeSet.get(i))){
- rangeSet.remove(i);
- }
- }
- }
Add Comment
Please, Sign In to add comment