
기본 문법 str 문자열의 pattern 부분을 replacement로 교체한 새로운 문자열을 리턴한다. (기존 str 문자열을 변경시키지 않음) pattern인자로 문자열이 들어온 경우는 제일 처음 매치하는 패턴 1개만 교체됨. flag가 g (global)인 RegExp가 들어온 경우에는 매치하는 모든 패턴이 교체됨. 문제 LeetCode 394번 Decode String 문제를 풀면서 replace 함수 사용법을 알아보자. The encoding rule is: k[encoded_string]k [encoded_string], where the encoded_string inside the square brackets is being repeated exactly k times. 입력 내부의 모든 ..

nodejs 콘솔 입력 템플릿 const readline = require('readline'); const rl = readline.createInterface(process.stdin, process.stdout); let input = []; let eval = () => { // Code } rl.on('line', function(line){ input.push(line); }).on('close', eval); 2차원 배열 만들기 let arr = Array.from(Array(5), () => Array(2).fill(0)) 0으로 초기화한 n*m 사이즈 배열 let arr = (new Array(n)).fill(0) 0으로 초기화한 길이가 n인 1차원 배열 배열 복사 (deep copy) ..

(1) 출력 console.log( ) (2) 입력 : readline 모듈 이용하는 방법 const readline = require('readline'); const rl = readline.createInterface(process.stdin, process.stdout); let input = []; let eval = () => { // Code } rl.on('line', function(line){ input.push(line); }).on('close', eval); readline 모듈 Readable 스트림으로부터 한 줄씩 읽어 들이는 인터페이스를 제공하는 모듈. The readline module provides an interface for reading data from a Rea..

간단한 구현 : javascript로 큐를 간단히 구현하려면 배열, push() 함수 (enqueue), shift() 함수 (dequeue)를 이용하면 된다. 그런데 shift() 함수의 시간 복잡도는 O(n)으로 다소 비효율적일 수 있다. 온라인 저지 사이트에서 javascript로 문제 풀다가 큐 때문에 시간 초과가 나면 아래처럼 바꿔보자. 효율적인 구현 : offset 변수를 추가로 이용해서 배열에서 dequeue 될 요소에 바로 접근한다 O(1) 만약 offset이 큐 길이 2배 이상이 되면 앞 부분을 자르고 (이미 dequeue 된 요소들), offset은 0으로 초기화한다. (내가 구현한 것 아님. 맨 아래 출처 참고 바랍니다.) function Queue(){ // initialise th..