문제를 푸는 알고리즘에 도전하는 방식은 두 가지가 있다. try to develop a more efficient algorithm for the problem try to prove that a more efficient algorithm is not possible 즉 알고리즘을 개선하던가, 아니면 더 효율적인 알고리즘은 만들 수 없다고 증명하던가 둘 중에 하나이다. 만약 더 효율적인 알고리즘을 만들 수 없다고 증명을 하면, 더 이상 알고리즘을 개선할 필요가 없다. 참고로 key의 comparison을 이용한 sorting algorithm은 nlgn보다 줄일 수 없다고 증명되었다. 1. Computational Complexity (계산 복잡도) 지금까지는 알고리즘의 복잡도를 계산했지만, 이 글에서..