자료구조란? 자료구조의 예시로는 큐, 스택, 연결 리스트, 트리 등이 있습니다. 사전적인 의미로는 자료(Data)의 집합을 의미하며, "각 원소들이 논리적으로 정의된 규칙에 의해 나열되며 자료에 대한 처리를 효율적으로 수행할 수 있도록 자료를 구분하여 표현한 것" 이라고 합니다. 그렇다면 자료구조를 사용하는 목적은 무엇일까요 목적은 명확합니다. 자료를 효율적으로 저장하고 관리하기 위해 사용되며 잘 선택된 자료구조는 실행시간을 단축시켜주거나 메모리 용량의 절약을 이끌어 낼 수 있습니다. 한 마디로 정리를 하자면 서비스나 어플리케이션에서 필요한 데이터를 메모리에 어떻게 구조적으로 잘 정리해서 담아두고, 관리하고 최종적으로 가장 효율적인 방식으로 필요한 데이터를 빠르게 접근하고 필요한 수정 삽입 삭제를 할 수 있도록 도와줍니다. 자료구조 분류 선형 자료구조(Linear Data Structure) 데이터가 일렬로 연결된 형태라고 보면 됩니다. 우리가 흔히 쓰는 int[] 배열같은 것이라 생각하면 쉽습니다. 선형 자료구조는 대표적으로 리스트(List)와 트리(Tree)가 있습니다. 비선형 자료구조(Nonlinear Data Structure) 선형 자료구조의 반대입니다.데이터가 일렬로 나열된 것이 아닌, 각 요소가 여러개의 요소와 연결 된 형태를 생각하면 됩니다. 쉽게 생각해서 거미줄 같다고 보면됩니다. 대표적인 비선형 자료구조는 그래프(Graph)와 트리(Tree)가 있습니다. 기타, 집합 선형,비선형 자료구조에 포함되지 않는 자료구조인 집합(Set)이 있습니다. 보통 기타 자료구조 또는 집합 자료구조로 봅니다. 집합의 경우는 데이터가 연결 된 형식이 아닙니다.