IT이야기/알고리즘 Level-up

[SW Algorithm 기초] 알고리즘 기본설명

FelixShin 2016. 8. 26. 07:30
반응형



1. 알고리즘이란?


유한한 단계를 통해 문제를 해결하기 위한 절차나 방법

컴퓨터가 어떤 일을 수행하기 위한 단계적인 방법


2. 알고리즘 표현방법

슈더코드

순서도


3. 알고리즘 성능은 무엇으로 측정하는가?


정확성 : 얼마나 정확하게 동작하는가

작업량 : 얼마나 적은 연산으로 원하는 결과를 얻어내는가

메모리 사용량 : 얼마나 적은 메모리를 사용하는가

단순성 : 얼마나 단순한가

최적성 : 더이상 개선할 여지 없이 최적화 되었는가


=> 성능 분석이 필요

: 알고리즘의 작업량을 비교함

예) 1부터 100까지 합구하는 문제

알고리즘1 : 1+2+3+ ... + 100 : 100번의 연산

알고리즘2 : (100 * (1+100)) /2 : 3번의 연산


시간복잡도(Time Complexity)

: 실행되는 명령문 개수를 계산 -> 실제 걸리는 시간 측정


빅오 표기법(Big-Oh Notation) (시간복잡도)

: 시간 복잡도 함수 중 가장 큰 영량력을 주는 n에 대한 항만 표시



Reference

알고리즘 교육 요약