기본 수학 지식

 

출처) 윤성우의 열혈 자료구조

 

성능 분석(Performance Analysis)이란?

    - 자료구조와 알고리즘의 성능을 분석하는 것

    - 시간 복잡도와 공간 복잡도 2가지가 있다.

 

공간 복잡도(Space Complexity)

    - 메모리의 사용량

    - 해당하는 알고리즘의 메모리 사용량에 대한 분석 결과

 

시간 복잡도(Time Complexity)

    - 속도

    - 해당하는 알고리즘의 수행시간 분석결과

 

알고리즘 평가 시 "시간 복잡도" 중요

    - 특정 알고리즘에 대해서 상대적인 우월성을 입증해야 하는 경우에는 메모리의 사용량도 함께 고려

 

알고리즘의 수행속도를 평가하는 방법

    - 처리해야 할 데이터 수 n 에 대한 연산횟수의 함수 T(n)을 구성

출처) 윤성우의 열혈 자료구조

데이터의 수가 많아짐에 따른 연산횟수의 증가 정도가 중요

즉, 그래서 알고리즘 A가 훨씬 좋은 알고리즘이다.

 

BUT, 그럼 무조건 알고리즘 A를 사용하면 되는 것인가? No

 

알고리즘 A와 같이 안정적인 성능을 보장하는 알고리즘은 알고리즘 B에 비해 구현 난이도가 훨씬 높다.

 

데이터 수가 많지 않고 성능에 덜 민감한 경우라면 B를 선택하는 것이 옳다.

 

In conclusion

상황에 맞게 결정해야한다.

구현보다 중요한 것이 종합적으로 사고하고 판단하는 능력일 수 있다.

+ Recent posts