사전적인 의미로 자료의 집합을 말한다.
각 원소들이 논리적으로 정의된 규칙에 의해서 나열되며 자료에 대한 처리를 효율적으로 수행할 수 있도록 자료를 구분하여 표현하는 것
자료구조는 왜 필요할까 ?
자료를 더 효율적으로 저장하고 관리한다. 그렇기 때문에 올바른 자료구조 방법은 실행시간을 단축시키고, 메모리 용량을 절약하도록 돕는다.
자료구조의 선택기준
- 자료의 처리시간
- 자료의 크기
- 자료의 활용빈도
- 자료의 갱신정도
- 프로그램의 용이성
자료구조의 특징
1. 효율성
예를 들어 데이터의 양이 많다면 순차검색보다는 이분검색을 활용하는 것이 좋다
2. 추상화
추상화란 복잡한 자료, 모듈, 시스템, 등으로부터 핵심적인 개념만 간추리는 것을 말한다
3.재사용성
자료구조의 분류
선형
데이터가 일렬로 나열되어 있다. ex. 배열, 연결리스트, 스택, 큐 ..
비선형
일렬이 아닌 특정한 형태로 되어있다. ex. 트리, 그래프 ..