Contents

Develop
2014.06.24 09:43

알고리즘 성능분석

Views 2965 Comment 0
Atachment
Attachment '1'
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
알고리즘의 성능을 분석할때 중요한 키워드 3가지가 있다.
 
1. 시간복잡도(Time Complexity)
시간복잡도는 알고리즘을 수행시 걸리는 시간에 대한 분석결과를 말한다.
 
2. 공간 복잡도(Space Complexity)
공간복잡도는 알고리즘을 수행시 메모리 사용량에 대한 분석결과를 말한다.
 
3. 빅-오 (Big-O)
시간복잡도를 나타낼 때 함수에서 가장 영향력이 큰부분을 말한다.
 
이 중 시간복잡도와 공간복잡도에 대해서 먼저 설명하겠다.
 
시간과 메모리 사용량을 적절이 판단하면서 알고리즘을 채택하여야 하는데
알고리즘을 채택하는데 있어서 객관적인 자료로 사용할 수 있기때문이다.
 
그럼 시간복잡도는 어떻게 측정을 할까?
프로그램이 시작되서 끝날때까지의 시간을 측정하는 방법은
자료의 양에따라 처리값이 다르기 때문에 알고리즘의 성능을 예측할수가 없다.
그래서 아래와 같이 측정한다.
 
1 . 연산의 횟수를 센다.
2 . 처리해야 할 데이터 수 n에 대한 함수T(n)을 나타낸다.

big_o.png

이렇게 측정을하면 어떤 알고리즘을 사용해야하는지에 대한 지표가 될 수 있다.

[출처] http://blog.naver.com/rkdgml6332/220038985752

?

List of Articles
No. Category Subject Author Date Views
661 Develop [ios] App States file hooni 2013.07.22 13193
660 Develop [html] 캐쉬된 웹페이지 사용하지 않도록 하는 방법 hooni 2003.04.23 13028
659 Develop [js] AngularJS를 소개합니다. file hooni 2014.01.06 13014
658 Develop [php] 심플한 게시판 ㅋㅋ 1 file hooni 2013.04.23 12991
657 Develop [js] 자바스크립트의 클로저 (JavaScript's Closure) hooni 2013.05.15 12979
656 Develop [c] 다중연결 서버 만들기 #1 - fork() 사용 file hooni 2013.04.23 12918
655 Develop [doc] UI개발시 유용한 소프트웨어 (개발 및 디버깅 툴) hooni 2013.04.23 12909
654 Develop [html] HTML5 튜토리얼 링크 ㅋㅋ hooni 2013.04.23 12813
653 Develop [c++] Win32 API 기본 출력인 MessageBox() 함수 사용 예제.. file hooni 2013.04.23 12638
652 Develop [c] flooding 알고리즘 미로 찾기(도스용) 소스코드 9 file hooni 2003.04.23 12509
651 Develop [ios] 네트워크 인디케이터(NetworkActivityIndicator) 작동 file hooni 2014.01.24 12490
650 Develop [php] php5.3부터는 eregi()대신 preg_match()를 사용 hooni 2013.11.18 12473
Board Pagination Prev 1 ... 11 12 13 14 15 16 17 18 19 20 ... 71 Next
/ 71