컴퓨터 과학에서 효율적인 접근 및 수정을 가능케하는 자료의 조직/관리/저장을 의미
자료구조는 데이터 값의 모임, 또 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령을 의미
신중히 선택한 자료구조는 보다 효율적인 알고리즘을 사용할 수 있게 함
효과적으로 설계한 자료구조는 실행시간 혹은 메모리 용량과 같은 자원을 최소한으로 사용하면서 연상을 수행하도록 해줌
대량의 데이터를 효율적으로 관리할 수 있는 데이터의 구조를 의미
코드 상에서 효율적으로 데이터를 처리하기 위해, 데이터 특성에 따라, 체계적으로 데이터를 구조화해야 함
어떤 데이터 구조를 사용하느냐에 따라, 코드 효율이 달라짐