# 자료구조 개요
## 목차
1. 자료구조란?
2. 시간 복잡도
3. 공간 복잡도
## 1. 자료구조란?
자료구조(data structure)는 데이터를 효율적으로 사용하기 틀이다. 이러한 효율성은 시간 복잡도(time complexity)와 공간 복잡도(space complexity) 기준으로 평가된다.
## 2. 시간 복잡도
시간 복잡도란, 해당 자료구조의 시간 효율성의 척도이다.
따라서, 시간 복잡도가 작을 수록 좋은 자료구조이다. 책장에 책을 정렬하는 꽂아두면 나중에 원하는 책을 빠르게 찾을 수 있다. 이 경우 책장이라는 자료구조를 활용하여 시간 복잡도를 줄인 예가 된다.
## 3. 공간 복잡도
공간 복잡도란, 해당 자료구조의 공간 효율성의 척도이다.
공간 복잡도 또한 적을 수록 좋은 자료구조가 된다. 캔맥주를 마구잡이 보관하기보다, 차곡차곡 박스에 담으면 같은 공간에 더 많은 양을 저장할 수 있다. 이경우 박스라는 자료구조를 사용하여 공간 복잡도를 줄인 예가 된다.
![Imgur](https://i.imgur.com/Cd99OkC.png)
컴퓨터도 마찬가지다. 데이터의 시공간적 효율성 증가를 위해 어떤 자료의 틀이 필요하다. 이를 자료구조 라고 한다.
## 요약
자료구조는 공간과 시간에 대한 효율성을 향상시키기 위한 데이터 저장 방법이다.