'leetcode 56 : using java
class Solution {
public int[][] merge(int[][] intervals) {
ArrayList<Integer>list=new ArrayList();
ArrayList<Integer>tem=new ArrayList();
List<List<Integer>>2d_ans=new ArrayList<>();
int count=0;
for(int i=0;i<intervals.length;i++){
if(list.get(1)==0){
list.add(intervals[i][0]);
list.add(intervals[i][1]);
}
else if(list.get(1)>=interval[i][0]){
//int temp=j++;
tem.add(list.get(0));
tem.add(interval[i][1]);
2d_ans.add(tem);
tem.clear();
list.clear();
list.add(intervals[i][0]);
list.add(intervals[i][1]);
}
else{
list.clear();
list.add(intervals[i][0]);
list.add(intervals[i][1]);
2d_ans.add(list);
}
}
//Collections.sort(list);
return 2d_ans;
}
}
I am trying to solve leetcode 56th problem but i'm getting an not a statement error at line 5 can someone help. Link to the problem is given below.
Solution 1:[1]
You have issues:
- Java variable names can't start with numbers.
- ans_2d is declared as a list of lists; you have to load it into an array of arrays OR change the return type.
import java.util.ArrayList; import java.util.List; class Solution { public List<List<Integer>> merge(int[][] intervals) { ArrayList<Integer> list=new ArrayList<>(); ArrayList<Integer>tem=new ArrayList<>(); List<List<Integer>> ans_2d =new ArrayList<>(); int count=0; for(int i=0;i<intervals.length;i++){ if(list.get(1)==0){ list.add(intervals[i][0]); list.add(intervals[i][1]); } else if(list.get(1)>=intervals[i][0]){ //int temp=j++; tem.add(list.get(0)); tem.add(intervals[i][1]); ans_2d.add(tem); tem.clear(); list.clear(); list.add(intervals[i][0]); list.add(intervals[i][1]); } else{ list.clear(); list.add(intervals[i][0]); list.add(intervals[i][1]); ans_2d.add(list); } } //Collections.sort(list); return ans_2d; } }
I didn't read your problem or check your code to see if it solves it. The compiler is happy now.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | duffymo |
