오늘은 면접 및 개발자영어 강의를 완료했다.

(1).백준 10845 큐는 이전 스택 문제와 유사한 동작을 하지만
스택이 아닌 큐를 이용하는 문제였다.
큐에 대해 학습을 원하는 수준의 문제였기 때문에
이중연결리스트를 직접 만들어서 작동해야 하는 등의 최적화는 필요 없었고
단순히 명령에 따른 조건 분기만 잘 처리하면 해결할 수 있었다.
const input = `15
push 1
push 2
front
back
size
empty
pop
pop
pop
size
empty
pop
push 3
empty
front`.split('\n')
const queue = []
const result = []
for(let i = 1 ; i < input.length ; i++){
if(input[i] === "pop"){
if(queue.length){
result.push(queue.shift())
}
else{
result.push(-1)
}
}
else if(input[i] === "size"){
result.push(queue.length)
}
else if(input[i] === "empty"){
if(queue.length){
result.push(0)
}
else{
result.push(1)
}
}
else if(input[i] === "front"){
if(queue.length){
result.push(queue[0])
}
else{
result.push(-1)
}
}
else if(input[i] === "back"){
if(queue.length){
const popNum = queue.pop()
result.push(popNum)
queue.push(popNum)
}
else{
result.push(-1)
}
}
else{
const pushNum = Number(input[i].split(' ')[1])
queue.push(pushNum)
}
}
console.log(result.join('\n'))'회고' 카테고리의 다른 글
| [취업준비일지] - 119 (0) | 2023.02.16 |
|---|---|
| [취업준비일지] - 118 (0) | 2023.02.15 |
| [취업준비일지] - 116 (0) | 2023.02.13 |
| [취업준비일지] - 115 (0) | 2023.02.12 |
| [취업준비일지] - 114 (0) | 2023.02.11 |
