99클럽 코테 스터디 15일차 TIL + 스택/큐

2024. 11. 11. 14:30Algorithm Problem Solving

 

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

1. 알고리즘! 생각해보자

1) 스택이 비어있거나 top에 있는 것과 동일하지 않을 경우, stack push

2. 해결 코드

import java.util.Stack;

public class Solution {
    public int[] solution(int[] arr) {
        // 스택 생성
        Stack<Integer> stack = new Stack<>();

        // arr 순회
        for (int i : arr) {
            // 스택이 비어있거나 i가 직전에 담긴 값과 다를 경우 스택에 i 넣기
            if (stack.empty() || !stack.peek().equals(i)) {
                stack.push(i);
            }
        }

        // stack to array
        return stack.stream().mapToInt(i -> i).toArray();
    }
}

3. 레퍼런스

 

[프로그래머스] 같은 숫자는 싫어 - 자바(Java)

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘

ittrue.tistory.com