https://school.programmers.co.kr/learn/courses/30/lessons/12906
풀이 - 나의 생각
별건 없고
Stack의 맨 위의 숫자가
현재 검사하는 숫자와 같으면 pass
다르다면 Stack에 넣어주면 끝입니다.
코드
import java.util.*;
public class Solution {
public int[] solution(int []arr) {
Stack<Integer> stack = new Stack<>();
stack.add(arr[0]);
for(int num : arr){
if(stack.peek() == num) continue;
stack.add(num);
}
int[] answer = new int[stack.size()];
int index = 0;
for(int num : stack){
answer[index++] = num;
}
return answer;
}
}
728x90