[알고리즘] JavaScript 기술 정리글
JavaScript 로 알고리즘을 풀면서, 사용한 기술에 대해서 정리한 글 입니다.
// 기본 정렬 (ASCII) array.sort
// 내림차순 정렬 array.sort((a, b) => { return b - a; });
while 문
O(n)
을 계산식(나눗셈, 나머지 등)으로 대체하여O(1)
을 만들 수 있다 - Lesson 03 FrogJmpjavascript 기본 나눗셈은 소숫점까지 출력됨
- Math.ceil() : 소수점 올림, 정수 반환
- Math.floor() : 소수점 버림, 정수 반환
- Math.round() : 소수점 반올림, 정수 반환
JavaScript 배열 (array) 특정 값으로 초기화하기
Array.apply(null, new Array(5)).map(Number.prototype.valueOf, 0); Array.apply(null, new Array(5)).map(String.prototype.valueOf, 'HI');
배열에서 숫자를 찾는것은
Arrays.indexOf(value)
이다.숫자의 절대값을 반환하는 것은
Math.abs()
이다.배열의 총 합을 구하는 메서드 reduceRight
Array.reduceRight((a,b)=>{return a+b;});
var array = [1, 10, 5, 11, 2]; //최대값 var max = array.reduce( function (previous, current) { return previous > current ? previous:current; }); //최소값 var min = array.reduce( function (previous, current) { return previous > current ? current:previous; });
꼭 배열을 이용할 필요가 없다면, min 값을 두고 비교하면서 최솟값을 찾을 것
등차수열의 합 : n(n+1) / 2
JavaScript Set
var mySet = new Set();
- set.prototype.add(value)
- set.prototype.clear()
- set.prototype.delete(values)
- set.prototype.entries()
- set.prototype.forEach(callbackFn[, thisArg])
- set.prototype.has(value)
- set.prototype.keys()
- set.prototype.values()