Table of Contents
알고리즘의 시간 복잡성은 코드 성능을 최적화하는 데 필수적입니다. JavaScript에서 알고리즘의 실행 시간이 입력 크기로 성장하는 방법을 분석하여 개발자가 효율성과 확장성에 대한 결정을 알려줍니다.
Time Complexity는 무엇입니까?
Time complexity는 알고리즘의 양을 입력의 크기와 관련하여 완료해야 합니다. 그것은 큰 O 표기를 사용하여 표현되며, 이는 성장률을 기준으로 알고리즘을 분류합니다.
JavaScript의 Time Complexity를 계산하는 단계
알고리즘의 시간 복잡성을 분석하려면 다음 단계를 따르십시오.
- 비교 또는 할당과 같은 코드 내에서 기본 작업을 식별합니다.
- 이 작업이 입력된 크기에 대해 얼마나 많은 시간을 계산합니다.
- 입력 크기 증가로 성장에 영향을 미치는 지배적 용어를 결정합니다.
예: 루프 분석
JavaScript의 간단한 루프를 고려하십시오.
] ]] ]] ]] ]] ] ] ] ] ] ] ] ] ]] ] ]] ]] ] ]
이 루프는 n배로, 그래서 그 시간 복잡성은 O(n)입니다. 배열된 루프가 참여하는 경우, 그 복잡성을 다룹니다.
JavaScript licenses API 웹 사이트
여기에 전형적인 복잡성:
- O(1): 일정한 시간, 입력 크기의 독립적인.
- O(log n): Logarithmic time, 배당 및 정복 알고리즘에 공통.
- O (n): 간단한 반복과 같은 선형 시간.
- O(n^2): 쿼터링 루프에서 전형적인 쿼드러티 시간.
- O(2^n): 공시시간, 종종 재발성 알고리즘.