99클럽 코테 스터디 7일차 TIL - 스택

김동하·2024년 7월 28일
0

알고리즘

목록 보기
57/90

문제

같은 숫자는 싫어

풀이

  • 순서를 보장해야하기 때문에 Hash는 불가능
  • for문 순회로 풀면 시간복잡도는 O(n)
  • for문도 가능하지만 문제 유형이 stack이니 stack으로 품

코드

import java.util.Stack;

public class Solution {
    public int[] solution(int []arr) {
       Stack<Integer> numberStack = new Stack<>();
        
       for(int n : arr){
           if(numberStack.isEmpty() || numberStack.peek() != n){
               numberStack.push(n);
           }
       }
       
     int[] answer = new int[numberStack.size()];
        for(int i = 0; i < answer.length; i++){
            answer[i] = numberStack.get(i);
        }
        return answer;
    }
}

정리

  • 자료구조를 util로 제공하는 java 짱임..
profile
프론트엔드 개발

0개의 댓글