Stack 5

[Programmers] 154539. 뒤에 있는 큰 수 찾기 (java)

https://school.programmers.co.kr/learn/courses/30/lessons/154539  문제 파악주어진 정보/입력자신보다 크면서 가장 가까이 있는 수를 뒷 큰수라고 한다.입력: 정수 배열 numbers해결해야 하는 문제모든 원소에 대한 뒷 큰수들을 차례로 담은 배열을 return하기단, 뒷 큰수가 존재하지 않는 원소는 -1을 담는다.  문제 풀이Stackimport java.util.*;class Solution { public int[] solution(int[] numbers) { int N = numbers.length; int[] answer = new int[N]; Stack stack = new Stack(..

알고리즘 2025.03.28

[Programmers] 176962. 과제 진행하기 (java)

https://school.programmers.co.kr/learn/courses/30/lessons/176962  문제 파악주어진 정보/입력입력값: 과제 계획을 담은 이차원 문자열 배열 plans해결해야 하는 문제과제를 끝낸 순서대로 이름을 배열에 담아 return 문제 풀이Greeady + Stackimport java.util.*;class Solution { public String[] solution(String[][] oldPlans) { int N = oldPlans.length; Plan[] plans = new Plan[N]; for (int i = 0; i (p1.start - p2.start)); ..

알고리즘 2025.03.21

[LeetCode] 32. Longest Valid Parentheses (java)

https://leetcode.com/problems/longest-valid-parentheses/description/  문제 파악'('과 ')'만을 포함하고 있는 문자열이 주어졌을 때, 유효한 괄호쌍 중 가장 긴 괄호쌍의 길이를 return하라.  문제 풀이괄호를 stack에 임시 저장해 두었다가, 짝을 찾은 '('는 stack에서 삭제 후 length 계산Stackclass Solution { public int longestValidParentheses(String s) { int longest = 0; // answer Stack stack = new Stack(); for (int i = 0; i 📊 실행 결과  NOTE데이터를 Stack에 저장..

알고리즘 2025.02.08

[LeetCode] 739. Daily Temperatures (java)

https://leetcode.com/problems/daily-temperatures/ 문제 파악다음 따뜻한 날까지의 날짜 차이를 계산하는 문제  문제 풀이Stackclass Solution { public int[] dailyTemperatures(int[] temperatures) { int[] answer = new int[temperatures.length]; Deque stack = new ArrayDeque(); for (int curr = 0; curr  📊 실행 결과시간 복잡도: O(n)  Note미래의 데이터에 따라 과거에 대한 값이 결정된다! 👉 Stack 자료구조 활용하기

알고리즘 2025.02.05