학습 목표
- 알고리즘의 정의와 일반적 특성, 알고리즘 설계의 개념과 절차에 대하여 이해하고 설명할 수 있다
- 알고리즘 설계의 원칙을 숙지하고, 실제 알고리즘 설계에 적용할 수 있다
- 주어진 문제를 해결하기 위한 알고리즘을 자연어와 플로우 차트, 의사 코드 등을 이용하여 작성하고 설계할 수 있다
- 다양한 알고리즘의 패러다임을 이해하고, 각 패러다임의 대표적인 문제에 대해 설명할 수 있다.
1. 알고리즘 정의
알고리즘이란?
- 문제를 해결하는 단계적 절차 또는 방법
- 주어지는 문제는 컴퓨터를 이용하여 해결할 수 있어야 함
- 입력과 결과(해)가 출력됨
일반적인 특성
정확성
- 알고리즘은 주어진 입력에 대해 올바른 해를 주어야 함
유효성
- 알고리즘의 각 단계는 실제 사람이 또는 컴퓨터가 수행 가능해야 함
유한성
명확성