[TIL] 면접 스터디, 스택 알고리즘, Multi-peer webRTC

김정호·2022년 3월 2일

면접 질문 답변 생각하기

미들웨어란 뭘까?

Express는 기본적으로 일련의 미들웨어 함수 호출입니다.

미들웨어 함수는 요청(req), 응답(res), 그리고 그 다음의 미들웨어 함수 대한 액세스 권한을 갖는 함수입니다. 그 다음의 미들웨어 함수는 일반적으로 next라는 이름의 변수로 표시됩니다.

미들웨어 함수들은 next를 통해 순차적으로 처리된다는 점이 주된 성질입니다.

따라서 사용자 인증을 수행하는 미들웨어 또는 로그를 남기는 미들웨어 등을 만들어놓고, 필요할 때 앞 쪽에 위치시키면 편리하게 이용할 수 있습니다.

body-parser 미들웨어, cors 미들웨어가 많이 쓰이며 보통 app.use()의 형태를 가집니다.

스택 알고리즘 문제 풀이

https://www.acmicpc.net/problem/1874

const fs = require('fs')
const input = fs.readFileSync('dev/stdin').toString().trim().split('\n')

const [n, ...tests] = input

const queue = []
for (let i = +n; i > 0; i--) {
    queue.push(i)
}

const stack = []
let answer = ''
for (let i = 0; i < +n; i++) {
    const target = +tests[i]
    if (stack[stack.length - 1] === target) {
        stack.pop()
        answer += '-\n'
        continue
    }
    while (stack[stack.length - 1] !== target && queue.length) {
        stack.push(queue.pop())
        answer += '+\n'
    }
    if (stack[stack.length - 1] !== target) return console.log('NO')
    stack.pop()
    answer += '-\n'
}

console.log(answer)

Multi-peer webRTC 공부

profile
개발자

0개의 댓글