알고리즘

[JavaScript] 시간 복잡도 줄이기

HSHyeon 2024. 3. 27. 11:25

1. 검색할 때는 배열 대신 set

2. 반복문 대신 연산으로 할 수 있으면 되도록 연산으로

-> includes/while문 말고 자료구조(스택, 큐) 쓰는 방법도 생각해보기

3. 기본 제공 메소드 너무 믿지 말기

 

시간복잡도함수명

O(1) at() , entries() , every() , isArray() , keys() , pop() , push() , shift() , values() , with()
O(n) concat() , copyWithin() , fill() , filter() , find() , findIndex() , findLast() , findLastIndex() , flat() , flatMap() , forEach() , from() , fromAsync() , group() , groupToMap() , includes() , indexOf() , join() , lastIndexOf() , map() , of() , reduce() , reduceRight() , reverse() , slice() , some() , splice() , toLocaleString() , toReversed() , toSpliced() , toString() , unshift()
O(n log n) , linear time on average sort() , toSorted()

 

 

References

https://velog.io/@pyotato/iterable-object-in-javascript%EC%A0%95%EB%A6%AC-lfmvdw9c

 

JS array의 메소드들의 시간복잡도(Big O)

👩‍💻자바스크립트 배열 연산함수 ⌛시간 복잡도

velog.io