-
728x90
- 앞의 숫자와 다른 숫자만 ArrayList에 담는다.
배열을 복사한 list를 만들고 remove하는 방법으로 구현하면, 효율성에서 시간초과가 난다.
아무래도 list 중간에 값을 빼게되면 다시 앞의 것과 뒤의 것을 연결해주는 것에서 시간이 많이 걸리기 때문인 것 같다.- 구한 숫자들을 answer배열에 담는다.
import java.util.ArrayList; public class Solution { public int[] solution(int []arr) { ArrayList<Integer> num = new ArrayList<Integer>(); num.add(arr[0]); for (int i = 1; i < arr.length; i++) { if (arr[i - 1] != arr[i]) num.add(arr[i]); } int[] answer = new int[num.size()]; for (int i = 0; i < answer.length; i++) answer[i] = num.get(i); return answer; } }
댓글