JavaScript 99

[Algorithm] Insertion Sort(삽입 정렬)

https://www.inflearn.com/course/algorithm-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EC%8B%A4%EC%8A%B5#curriculum [무료] 알고리즘의 개요와 실습 환경 구축 - 인프런 | 강의 알고리즘을 배우며, 실무에서는 알고리즘이 어떻게 활용되는지 알아봅니다., [임베딩 영상] 알고리즘의 개요와 실습 환경 구축 알고리즘은 문제를 해결하는 절차입니다.입력, 출력, 유한성, 명 www.inflearn.com 위의 네번째 강의 삽입정렬에 대한 리뷰이다. 삽입정렬의 경우 말 그대로 insert 를 한다. 예를 들어 배열 1, 10, 5, 8 이 있다면 10은 [x, 1, y] 에서 1보다 큰 수를 나타내는 y 자리에 들어갈 것이다. 다음 5의 ..

[Algorithm] Bubble Sort(버블 정렬)

https://www.inflearn.com/course/algorithm-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EC%8B%A4%EC%8A%B5#curriculum [무료] 알고리즘의 개요와 실습 환경 구축 - 인프런 | 강의 알고리즘을 배우며, 실무에서는 알고리즘이 어떻게 활용되는지 알아봅니다., [임베딩 영상] 알고리즘의 개요와 실습 환경 구축 알고리즘은 문제를 해결하는 절차입니다.입력, 출력, 유한성, 명 www.inflearn.com 3강 버블 정렬 강의 복습 겸 일지다. 버블 정렬의 경우 array가 1, 10, 5, 8, 7, 6, 4, 3, 2, 9 이렇게 있다면 1, 10 => 1, 10 10, 5 => 5, 10 10, 8 => 8, 10 이런 식으로 두 수..

[Algorithm] Selection Sort (선택정렬)

https://www.inflearn.com/course/algorithm-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EC%8B%A4%EC%8A%B5#curriculum [무료] 알고리즘의 개요와 실습 환경 구축 - 인프런 | 강의 알고리즘을 배우며, 실무에서는 알고리즘이 어떻게 활용되는지 알아봅니다., [임베딩 영상] 알고리즘의 개요와 실습 환경 구축 알고리즘은 문제를 해결하는 절차입니다.입력, 출력, 유한성, 명 www.inflearn.com 위 사이트의 두번째 강의인 정렬의 개요와 선택 정렬에 대한 강의일지를 쓴다. (복습 겸) 선택정렬의 시간 복잡도는 O(N*N) 혹은 O(N^2) 라고 한다. 회수는 등차수열의 합 n * ( n + 1 ) / 2 이나 컴퓨터에스는 가장 큰..

[프로그래머스] 프로그래머스 124 나라의 숫자

출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges ** Javascript 3진법이라는 알았는데 for문으로 접근했다가 시간을 너무 오래 잡아먹었다. 결국 구글링해서 답을 알아냈는데 생각보다 더 간단했다. while 을 사용하면 이렇고 function solution(n) { const availableNumber = [ 4, 1, 2 ]; let answer = ''; while (n) { answer = availableNumber[n % 3] + answer; n = n % 3 ? Math.floor(n / 3) : n / 3 - 1; } return answer; } 더 줄이면 이렇게 된다. 추천 가장 많이 받은 식인데 재귀함수 방..

[Javascript] Array.from(), Array.prototype.reduce() (feat. 프로그래머스 다리를 지나는 트럭)

프로그래머스에서 풀다 막힌 문제인데 내 첫 식은 이랬다. function solution(bridge_length, weight, truck_weights) { let seconds = 0; let onBridge = [ ...truck_weights ]; do { let sumWeight = onBridge.reduce((accumulator, currentValue) => accumulator + currentValue, 0); if (sumWeight + waitings[0] 0); do { onBridge.shift(); seconds++; if (truck_weights.length) { let sumWeight = onBridge.reduce((accumulator, currentValue) ..

Javascript 2021.04.21

[Javascript] Array 중복 제거 - Set 사용

Javascript 쓰다 보면 [] (Array)를 쓸 일이 굉장히 많다. 그리고 array 값 중 중복된 값들을 제거하고 싶을 때가 온다. 일단 array 내 element 가 object 가 아님을 전제로 하였을 때 new Set() 를 사용한다. set 객체는 자료형에 상관없이 유일한 값만 저장시킨다고 모질라에 나와있지만 확인 결과, object 형식은 안되는 것 같다. var arr = []; for (var i = 0; i < 5; i++) { arr.push("a"); } var newArr = [...new Set(arr)]; console.log("===== String ====="); console.log(newArr); console.log("===== String ====="); va..

Javascript 2021.03.31

[Javascript] Array.prototype.some(), Array.prototype.every()

Array.prototype.some() 은 확인할 list 내 원하는 조건을 만족하는 값이 하나라도 있을 경우 true 를 return Array.prototype.every() 는 확인할 list 내 모든 값이 조건을 만족해야 true 를 return (하나라도 만족하지 못할 경우 false) 예시를 통해 이해하자면 const isBiggerObjInListThan = (list, compareValue) => { console.log(`isBiggerObjInListThan ${compareValue} : ${list.some((item) => item.value > compareValue)}`); }; const arr = [ { name: "a", value: 1 }, { name: "b", v..

Javascript 2021.03.31
반응형