알고리즘의 개요
알고리즘의 조건
- 입력 : 0개 이상의 입력이 존재해야 한다.
- 출력 : 1개 이상의 출력이 존재해야 한다.
- 명백성 : 각 명령어의 의미는 모호하지 않고, 명확해야 한다.
- 유한성 : 한정된 수의 단계 후에는 반드시 종료되어야 한다. cf) OS는 무한루프로 실행됨
- 유효성 : 각 명령어들은 실행 가능한 연산이어야 한다.
알고리즘의 기술 방법
- 자연어로 표기(영어, 한국어 등)
o 읽기 쉬움
o 단어들을 정확하게 정의하지 않으면 의미 전달이 모호
- 흐름도(Flow Chart)
o 직관적이고 이해하기 쉬운 알고리즘 기술 방법
o 그러나 복잡한 알고리즘의 경우, 상당히 복잡해짐
- 유사코드(Pseudo-code-개념적인 코드)
o 알고리즘의 고수준 기술 방법
o 자연어보다는 더 구조적인 표현방법
o 프로그래밍 언어보다는 덜 구체적
o 알고리즘 기술에 가장 많이 사용
- 프로그래밍 언어(C, C++, etc)
o 알고리즘의 가장 정확한 기술이 가능
o 실제 구현 시 많은 구체적인 사항들이 알고리즘의 핵심적인 내용에 대한 이해를 방해됨
'자료구조&알고리즘' 카테고리의 다른 글
알고리즘 분석 (0) | 2022.02.11 |
---|---|
자료구조와 알고리즘 (0) | 2022.02.11 |
추상 데이터형 (0) | 2022.02.10 |
수학적 귀납법 (0) | 2022.02.10 |
자료구조를 위한 수학 (0) | 2022.02.09 |