프로그래밍/알고리즘
2020. 4. 9.
algorithm (알고리즘)
어떠한 문제를 해결하기 위한 효율적인 절차 알고리즘의 성능분석 a. 계산복잡도 (시간 복잡도와 공간 복잡도로 구분) - 알고리즘 수행에 걸리는 시간과 알고리즘 수행에 필요한 메모리가 얼마인지를 나타낸다. - 현재는 플랫폼의 성능이 좋아져서 시간복잡도를 우선시한다. (대부분의 프로그램 환경에서 공간에 대한 비용보다 시간에 대한 비용이 더 많이 들기 때문) (메모리가 중요한 특정 환경에서는 공간복잡도가 우선이라고 한다.) b. 시간 복잡도 - 입력 값에 따라 알고리즘의 수행에 걸리는 시간을 말한다. - 단순히 시간으로 계산하면 테스트 환경에 따라 성능이 달라질 수 있기 때문에 입력 값에 따른 연산의 수행 횟수를 뜻한다. - 지정문, 조건문, 반복문에 대하여 수행 횟수를 계산하면 된다. (지정문 : 특정 ..