큐를 구현하는
함수들 6개를 만듭시다
저는 그냥 한개의 코드로 퉁쳤습니다
천천히 하나씩 하면 쉽습니다
코드입니다
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
import java.util.Deque;
import java.util.LinkedList;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
Deque<Integer> q = new LinkedList<>();
int N = Integer.parseInt(br.readLine());
StringTokenizer command;
while(N-- > 0) {
command = new StringTokenizer(br.readLine(), " "); // 문자열 분리
switch(command.nextToken()) {
case "push":
q.offer(Integer.parseInt(command.nextToken()));
break;
case "pop" :
Integer item = q.poll();
if(item == null) {
sb.append(-1).append('\n');
}else {
sb.append(item).append('\n');
}
break;
case "size":
sb.append(q.size()).append('\n');
break;
case "empty":
if(q.isEmpty()) {
sb.append(1).append('\n');
}else {
sb.append(0).append('\n');
}
break;
case "front":
Integer ite = q.peek();
if(ite == null) {
sb.append(-1).append('\n');
}else {
sb.append(ite).append('\n');
}
break;
case "back":
Integer it = q.peekLast();
if(it == null) {
sb.append(-1).append('\n');
}else {
sb.append(it).append('\n');
}
break;
}
}
System.out.println(sb);
}
}
'백준 문제풀기 > JAVA' 카테고리의 다른 글
[백준 24060 JAVA 자바] 알고리즘 수업 - 병합 정렬 1 (0) | 2023.08.30 |
---|---|
[백준 19532 JAVA 자바] 수학은 비대면강의입니다 (0) | 2023.08.30 |
[백준 18108 JAVA 자바] 1998년생인 내가 태국에서는 2541년생?! (0) | 2023.08.29 |
[백준 1075 JAVA 자바] 나누기 (0) | 2023.08.28 |
[백준 17252 JAVA 자바] 삼삼한 수 (0) | 2023.08.28 |