더 쉽게 표현하자면, 1) 처리하고자 하는 데이터들이 모여 있는 형태 혹은 2) 처리하고자 하는 데이터들 사이의 관계(수직 관계, 상하 관계, 일방적인 관계, 상호 관계 등)를 정의한 것 혹은 3) 데이터들을 사용하기 용이하게 저장해 놓은 형태라고 볼 수 있다.
자료구조를 잘 선택하면 사용하는 메모리를 최소화 할 수 있으며 시간, 공간적으로 효율성을 확보할 수 있다.
도서관의 책들이 잘 정리되어 있으면 우리는 우리가 원하는 책을 쉽게 열람할 수 있다.하지만 오래된 책방 뒤죽박죽 되어 있는 책들 중에 우리가 원하는 책을 찾으려면 꽤 시간이 걸릴 것이다.
자료구조를 잘 선택하고 잘 구성한다는 것은나중에 자료를 찾고 꺼내오기 쉽도록 책들을 잘 꽂아두는 규칙과 틀을 만드는 것이라고 볼 수 있다.
소프트웨어를 문제없이, 빠르게 실행할 수 있는 명쾌한 코드를 작성하는 능력을 갖추고 소프트웨어 공학자가 가져야 하는 전문성을 키우려면 다양한 자료 구조를 알고, 각각의 자료 구조가 개발 중인 프로그램의 성능에 어떤 영향을 미칠지 확실히 이해하고 있어야 한다.