본문 바로가기

전체 글157

[자바스크립트/알고리즘] 배열 여러개를 합친 후 유일한 값 반환하기 (set 객체, flat 함수) 문제 둘 이상의 배열이 제공되고, 원래 제공된 배열의 순서대로 중복이 없는 새로운 배열을 반환하라. 나의 풀이 Set 객체와 flat() 함수를 이용하여 정말 간단하게 코드를 짤 수 있다. function uniteUnique(...arr) { return [...new Set(arr.flat())]; } uniteUnique([1, 3, 2], [5, 2, 1, 4], [2, 1]); //실행코드 flat()으로 중첩된 배열을 하나로 합친 뒤 Set 객체로 중복된 값을 제거해 주었다. 중복된 값 제거에는 Set 객체를 사용하면 정말 편하다!! flat() 함수에 관한 포스트다. [자바스크립트] flat() 함수-중첩된 배열 구조 하나로 합치기 정의 flat() 메서드는 모든 하위 배열 요소를 지정한 깊.. 2021. 2. 1.
[자바스크립트] flat() 함수-중첩된 배열 구조 하나로 합치기 정의 flat() 메서드는 모든 하위 배열 요소를 지정한 깊이까지 재귀적으로 이어붙인 새로운 배열을 생성합니다. 구문 const newArr = arr.flat([depth]) 예시 const arr1 = [1, 2, [3, 4]]; arr1.flat(); // [1, 2, 3, 4] const arr2 = [1, 2, [3, 4, [5, 6]]]; arr2.flat(); // [1, 2, 3, 4, [5, 6]] const arr3 = [1, 2, [3, 4, [5, 6]]]; arr3.flat(2); // [1, 2, 3, 4, 5, 6] const arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]]; arr4.flat(Infinity); // [1, 2, 3, 4, .. 2021. 2. 1.
[자바스크립트/알고리즘] DNA 페어링 DNA Pairing이란? DNA 가닥에 페어링 요소가 없다면 각 문자를 가져와서 쌍을 만들고 배열로 반환한다. 즉, 누락된 요소를 제공된 문자와 일치시킨다. 기본 쌍(Base Pairs)은 AT와 CG의 쌍이다. 예시 GCG는 [["G", "C"], ["C","G"],["G", "C"]] 를 반환한다. ATCGA는 [["A","T"],["T","A"],["C","G"],["G","C"],["A","T"]] 를 반환한다. 나의 풀이 function pairElement(str) { let answer = []; str.split("").map(e => { switch(e){ case 'G' : answer.push([e, 'C']); break; case 'C' : answer.push([e, 'G']).. 2021. 2. 1.
[자바스크립트/알고리즘] Pig Latin (정규식) 피그 라틴 어린이들의 말장난의 일종으로, boy를 oybay라 하는 것과 같이 맨 앞자음을 어미로 돌리고 그 뒤에 ay를 붙이는 것처럼 하는 말장난이다. 출처 : ko.wikipedia.org/wiki/%ED%94%BC%EA%B7%B8_%EB%9D%BC%ED%8B%B4 피그 라틴의 규칙은 이러하다. -단어가 모음으로 시작되면 끝에 'way'를 더한다. -단어가 자음으로 시작되면, 첫 번째 자음 또는 자음 군집(cluster)을 단어의 끝으로 이동한 후 "ay"를 추가한다. 예시 california -> aliforniacay bagel" = "agelbay" "fail" = "ailfay" "poo" = "oopay" algorithm -> algorithmay eight -> eightway 나의 풀이.. 2021. 2. 1.
[자바스크립트/알고리즘] 프로그래머스-직사각형 별찍기 문제 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 제한 사항 n과 m은 각각 1000 이하인 자연수입니다. //주어진 부분 process.stdin.setEncoding('utf8'); process.stdin.on('data', data => { const n = data.split(" "); const a = Number(n[0]), b = Number(n[1]); // let str = ""; for(let i = 0; i < b; i++){ str += "*".repeat(a) + "\n"; } console.log(str); }); repeat() 메소드를 이용하여 *를 a번 반복하여.. 2021. 1. 28.
[리액트] yarn/npm start가 너무 느릴 때 해결방안 리액트로 만든걸 보기 위해 yarn start를 입력하고 크롬 창을 띄웠다. 코드를 수정하고 적용된 화면을 보기 위해 새로고침을 눌렸는데 결과물을 보기까지 대략 15초가 걸렸다! 무한정 돌아가는 로딩바.... 너무 답답해서 찾아보니 스택오버플로우에 나와 비슷한 고민의 글이 있었고 yarn의 버전이 문제였다. super slow node npm commands I have node v.4.4 with npm v.2.14.20 (default bundled with windows installer). My OS: Windows 7 64bit. Hardware: Dell laptop, 16GB RAM, SSD, core i7. I'm facing a problem with extremely slow npm. .. 2021. 1. 27.