- 알고리즘이란?
- 알고리즘의 특성
- 문제해결 알고리즘의 4가지 특징
- 알고리즘의 평가 기준
- 알고리즘 설계 기법
- 알고리즘의 표현 방법
1. 알고리즘?
- '알고리즘', '알고리듬' 이라고 표현하기도 하며 주로 문제를 해결하는 방법을 순서대로 나타낸 것을 의미한다.
- 문제를 해결하기 위해 정해진 일련의 절차.
- 프로그램을 작성하는 기초가 되는 것.
- 컴퓨터를 동작시키기 위해 어떻게 입력하고 입력된 정보를 어떻게 처리하며, 얻어진 데이터를 어떠한 형식으로 출력, 표시할 것인가 등의 알고리듬을 프로그램으로 완전히 기술해야 함
- 어떤 문제를 해결하기 위해 명확히 정의된 유한개의 규칙과 절차의 모임
2. 알고리즘의 특징
- 입력 : 알고리즘은 0 또는 그 이상의 외부에서 제공된 자료가 존재한다.
- 출력 : 알고리즘은 최소 1개 이상의 결과를 가진다.
- 유한성 : 알고리즘은 단계들을 유한한 횟수로 거친 후 문제를 해결하고 종료해야 한다.
- 명확성 : 알고리즘의 각 단계는 명확하여 애매함이 없어야 한다.
- 효과성 : 알고리즘의 모든 연산들은 사람이 종이와 연필을 이용하여 유한한 시간 안에 정확하게 수행할 수 있을 정도로 충분히 단순해야 한다.
3. 문제해결의 알고리즘의 4가지 특징
- 효과성 : 하나의 알고리즘은 동일 유형의 문제 군에 집단적 해결을 보장하는 일반적 특성을 갖는다.
- 정확성 : 정확한 알고리즘은 모든 입력에 대하여 항상 올바른 답을 보장한다.
- 효율성 : 알고리즘은 정확한 답을 보장할 뿐 아니라 문제해결의 최선의 방법을 지향한다.
- 전이성 : 하나의 알고리즘은 다른 알고리즘으로의 변형이나 이전이 가능한 경우가 많다.
4. 알고리즘의 평가기준
- 1) 공간복잡도 : 알고리즘으로 문제를 해결할 때 필요한 공간인 메모리의 크기
- 2) 시간복잡도 : 같은 조건 같은 문제를 해결하는데 걸리는 시간에 대한 평가 방법
5. 알고리즘 설계기법
- 1) 문제분해
- 2) 모든 경우의 수를 모두 확인
- 3) 가능성이 있는 경우만 확인
- 4) 계산 가능한 범위 안에서 가장 가까운 결과 찾기
6. 알고리즘의 표현 방법
- 자연어
- 순서도
- 의사코드
- 프로그래밍 언어
반응형
'★ 프로그래밍 > º 인공지능융합교육과' 카테고리의 다른 글
/ 프로그램의 구조 (순차구조, 선택구조, 반복구조) (0) | 2021.04.13 |
---|---|
불확실성 발생요인과 불확실성의 유형, 확률과 베이지안 정리 (0) | 2021.04.05 |
컴퓨팅 사고력(Computational Thinking) : 구성요소, 세부요소, 상세요소, 활용 사례 (0) | 2021.02.04 |
4차 산업혁명 미래교육 중점추진전략 : 유연화, 자율화, 개별화, 전문화, 인간화 (0) | 2021.02.04 |
4차 산업혁명 기술 : 인공지능, 모바일 컴퓨터, 사물인터넷, 로봇, 자율주행차 (0) | 2021.02.04 |