자료구조란 무엇인가?
"프로그램이란 데이터를 표현하고, 그렇게 표현된 데이터를 처리하는 것이다."
데이터를 표현 : 자료구조
데이터를 처리 :알고리즘
자료구조의 분류
알고리즘을평가하는 두 가지요소
- 시간 복잡도(time complexity) -> 얼마나 빠른가?
- 공간 복잡도(space complexity) -> 얼마나 메모리를 적게 쓰는가?
*시간 복잡도를 더 중요시 한다.
시간복잡도의평가방법
- 중심이되는 특정연산의 횟수를 세어서평가를 한다.
- 데이터의 수에 대한 연산횟수의 함수 T(n)을 구한다.
알고리즘의 수행속도 비교기준
데이터의 수가 적은경우의 수행속도는 큰 의미가없다.
데이터의 수에 따른 수행 속도의 변화정도를 기준으로한다.
최악의 경우와 최상의 경우
순차 탐색 예제
이진 탐색 예제
이진 탐색 처리 결과 예제
참고: 윤성우의 열혈 자료구조
'컴퓨터 기초 > 자료구조' 카테고리의 다른 글
스택 (0) | 2021.01.24 |
---|---|
큐 (0) | 2021.01.24 |
4.연결리스트 - 연결리스트 (0) | 2020.09.02 |
3.연결리스트 - 배열 (0) | 2020.09.02 |
2.재귀 (0) | 2020.08.31 |