🔗 카드 뭉치
import java.util.*;
class Solution {
public String solution(String[] cards1, String[] cards2, String[] goal) {
Deque<String> stack1=new ArrayDeque<>();
Collections.addAll(stack1,cards1);
Deque<String> stack2=new ArrayDeque<>();
Collections.addAll(stack2,cards2);
Deque<String> queue=new ArrayDeque<>();
Collections.addAll(queue,goal);
while(!queue.isEmpty()){
String g=queue.poll();
if(!stack1.isEmpty() &&stack1.peek().equals(g)){
stack1.pop();
}else if(!stack2.isEmpty() &&stack2.peek().equals(g)){
stack2.pop();
}
else{
return "No";
}
}
return "Yes";
}
}
Array ➡️ Deque
1. Collections.addAll()
사용
Deque<String> stack1=new ArrayDeque<>();
Collections.addAll(stack1,cards1);
2. List 로 초기화
Deque<String> stack2=new ArrayDeque<>(Arrays.asList(cards1));
3. 반복문으로 직접 추가
- 이 방법이 가장 빠름
Deque<String> stack3=new ArrayDeque<>();
for(String s : cards1) {
stack3.push(s);
}
'코딩테스트 > 문제풀이' 카테고리의 다른 글
[ 프로그래머스 ] #42576 : 완주하지 못한 선수 - JAVA (0) | 2025.04.21 |
---|---|
[ etc ] #18 : 두 개의 수로 특정값 만들기 - JAVA (0) | 2025.04.21 |
[ 프로그래머스 ] #42862 : 체육복 - JAVA (0) | 2025.04.18 |
[ 프로그래머스 ] #42860 : 조이스틱 - JAVA (1) | 2025.04.17 |
[ 프로그래머스 ] #64065 : 튜플 - JAVA (0) | 2025.04.16 |