[Algorithm] 알고리듬(Algorithm)

알고리듬(Algorithm)

알고리즘이란 무엇일까?

사전적 정의 : 문제를 해결하기 위한 여러 동작들의 모임


알고리즘의 조건

  1. 입력 : 외부에서 제공되는 자료가 0개 이상 존재한다.
  2. 출력 : 적어도 2개 이상의 서로 다른 결과를 내어야 한다. (모든 입력에 대한 동일한 결과가 나오면 안됨)
  3. 명확성 : 수행 과정은 명확하고, 모호하지 않은 명령어로 구성되어야 한다.
  4. 유햔성(종결성) : 유한 번의 명령어를 수행 후(유한시간 내로)에 종료한다.
  5. 효율성 : 모든 과정은 명백하게 실행 가능(검증 가능)한 것이어야 한다.


좋은 알고리즘의 분석 기준


유명한 알고리즘의 종류

탐색


정렬


수치 계산 (수치해석)


문자열 탐색