[프로그래머스] 같은 숫자는 싫어

박의진·2023년 4월 2일
0

코딩테스트

목록 보기
22/25

스택을 활용한 문제

스택은 LIFO 구조로 LAST IN FIRST OUT 에 해당한다.

push() : 새로운 값 입력
pop() :TOP 값을 리턴하면서 삭제
peek() : TOP 값을 리턴하지만 삭제는 하지 않음
size() : STACK의 크기 출력
empty() : 빈 스택인지 체크 (t/f 리턴)
contains(1) stack에 1이 있는지 체크 (t/f 리턴)
clear() : stack 전체 삭제


import java.util.*;

public class Solution {
    public Stack solution(int []arr) {
        Stack<Integer> st = new Stack<>();
        
        for(int i=0; i<arr.length; i++){
            if(st.empty())
                st.push(arr[i]);
            else{
                if(st.peek()!=arr[i])
                    st.push(arr[i]);
            }
        }
        
        return st;
    }
}

반환형이 원래는 INT 형 배열이었지만 그냥 STACK으로 바꿔버려서 풀었다.

profile
주니어 개발자의 개발일지

0개의 댓글