시간복잡도입력크기에 대해 어떠한 알고리즘이 실행되는데 걸리는 시간이며 주요로직의 반복횟수를 중점으로 측정됩니다.
시간 복잡도(time complexity)란 기본적인 연산의 수를 입력의 크기에 대한 함수로 표현한것 (기본적인 연산 : 더 작게 쪼갤 수 없는 최소 크기의 연산)
즉, 시간 복잡도가 낮다고 항상 더 빠르게 동작하는것은 아님보통 어떤 로직에 걸리는 시간을 잴 때는 다음과 같이 할 수 있습니다.
console.time('test')
let sum = 0;
for(let i = 0; i < 1000000; i++) {
sum += 1
}
console.timeout('test')
하지만 이러한 시간이라는 것은 컴퓨터 사양, 메모리 사용 상태 등 여러가지 요소에 영향을 받곤 합니다.
그래서 시간복잡도를 설명할 때는 시간이 아니라 어떠한 알고리즘이 주어진 입력크기를 기반으로 어떠한 로직이 몇번 반복되었는가를 중점으로 설명합니다.
시간 복잡도 외에 고려할 요소들