😎풀이

  1. 해시맵 정의
  2. 현재 스트리밍 차례 정의
  3. 초기화
  4. 해시맵에 key value 형태로 데이터 저장
  5. 출력 타이밍에 순서대로 데이터 출력력
class OrderedStream {
    private map: Map<number, string>
    private turn: number
    constructor(n: number) {
        this.map = new Map()
        this.turn = 1
    }
    insert(idKey: number, value: string): string[] {
        this.map.set(idKey, value)
        if (idKey !== this.turn) return []
        const result = []
        while (this.map.has(this.turn)) {
            result.push(this.map.get(this.turn))
            this.map.delete(this.turn)
            this.turn++
        }
        return result
    }
}
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글