알고리즘 편집하기
IT위키
편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
3번째 줄: | 3번째 줄: | ||
== 알고리즘의 조건 == | == 알고리즘의 조건 == | ||
* 입력: 0개 이상의 입력을 받는다. | |||
* | * 출력: 1개 이상의 출력을 생성하며, 입력에 따라 2개 이상의 서로 다른 결과가 나와야 한다. | ||
* 명확성: 수행 과정은 명확하고 모호하지 않아야 한다. 언어 변경이 수월해야 한다. | |||
* 유한성(종결성): 한정된 수행 후 한정된(유한한) 시간 내에 종결되어야 한다. | * 유한성(종결성): 한정된 수행 후 한정된(유한한) 시간 내에 종결되어야 한다. | ||
* 효율성: 모든 과정은 명백하게 실행 가능한 수준이어야 한다. | * 효율성: 모든 과정은 명백하게 실행 가능한 수준이어야 한다. | ||
== 알고리즘 평가 == | == 알고리즘 평가 == | ||
25번째 줄: | 13번째 줄: | ||
;적당한 입력에 대해서 유한 시간내에 올바른 답을 산출하는가를 판단 | ;적당한 입력에 대해서 유한 시간내에 올바른 답을 산출하는가를 판단 | ||
=== | === 시간 복잡도(Time Complexity) === | ||
* 최악의 경우를 분석 | * 최악의 경우를 분석 | ||
* 최적의 경우를 분석 | * 최적의 경우를 분석 | ||
* 모든 경우를 분석 | * 모든 경우를 분석 | ||
* 평균치 분석 | * 평균치 분석 | ||
=== 공간 복잡도(Space Complexity) === | === 공간 복잡도(Space Complexity) === |