시간 복잡도와 공간 복잡도

시간 복잡도란?

시간 복잡도란 입력 크기에 대해 어떤 알고리즘이 실행되는데 소요되는 시간으로, 주요 로직의 반복 횟수를 중점으로 측정된다.


왜 입력 크기 기반이지?

프로그램의 실제 수행 시간은 컴퓨터의 사양 등의 요소에 영향을 받기 때문이다.


시간 복잡도는 왜 필요할까?

효율적인 코드로 개선하는데 쓰이는 척도가 되기 때문이다.




공간 복잡도란?

공간 복잡도란 입력 크기에 대해 어떤 알고리즘이 실행되는데 필요한 메모리 공간의 양이다.




빅오 표기법이란?

빅오 표기법이란 복잡도에 가장 영향을 많이 끼치는 항의 상수 인자를 빼고, 나머지 항을 없애서 복잡도를 나타내는 표기법이다. 이때 나머지 항을 없애는 이유는, 가장 영향을 많이 끼치는 항에 비해 나머지 항은 복잡도에 미치는 영향이 미미하기 때문이다.