Algorithm/개념 정리

복잡도

복잡도(Complexity)란?

 

복잡도 = 알고리즘의 성능을 나타내는 척도

 

복잡도는 두 가지로 나눌 수 있다.

  • 시간 복잡도(Time Complexity)
    • 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지를 의미
    • 알고리즘을 위해 필요한 연산의 횟수
  • 공간 복잡도(Space Complexity)
    • 특정한 크기의 입력에 대하여 알고리즘이 얼마나 많은 메모리를 차지하는지 의미
    • 알고리즘을 위해 필요한 메모리의 양
    • 512MB = 1.2억개의 int

동일한 기능을 수행하는 알고리즘이 있다면 일반적으로 복잡도가 낮을수록 좋은 알고리즘이다.

 


출처 : 이것이 취업을 위한 코딩 테스트다 with 파이썬 (나동빈 저)

'Algorithm > 개념 정리' 카테고리의 다른 글

논리 연산과 드모르간 법칙  (0) 2022.11.08
시간 복잡도 (Time Complexity)  (0) 2022.11.07
Unfold Recursion  (0) 2021.04.15
Merge Sort  (0) 2021.04.14
Divide and Conquer Algorithm  (0) 2021.04.14