본문 바로가기

Data Structure

자료구조의 분류

자료구조 : 컴퓨터에서 처리 할 자료를 효율적으로 관리하고 구조화 시키기 위한 학문


자료를 형태에 따라 분류하면 프로그래밍 언어에서 배운 정수, 실수, 문자, 문자열 등이 데이터 타입에 해당하는

'단순 구조'와 자료 간의 연결관계가 1:1 관계를 가지고 있는 '선형 구조', '1:M 또는 M:M 관계의 '비선형 구조',

그리고 '파일 구조'로 나눌 수 있다. 


표현 할 자료의 특성과 수량, 자료의 주된 사용 방법과 

수행하는 연산의 종류, 구현에 필요한 기억 공간 용량을 고려하여 가장 효율적인 자료구조를 선택해야 한다.


< 형태에 따른 분류 >


크게는 선형구조와 비선형 구조, 파일 구조로 나뉘게 되는데, 각 구조의 특성을 설명 하자면


선형 구조는 자료 간의 연결 관계가 1:1 관계를 갖는 구조로 순차 리스트와 연결 리스트, 스택, 큐, 덱 등이 있다.

순차리스트는 논리적인 순서와 기억 장소에 저장 되는 물리적 순서가 일치하는 구조이며, 

연결리스트는 물리적인 순서에 상관없이 포인터를 사용하여 연결한 논리적인 순서를 갖는 구조이다.

스택과 큐, 덱은 자료의 삽입 또는 삭제 위치에 대한 제한 조건이 있는 선형 구조이다.


비선형 구조는 자료 간에 선형 구조가 아닌 계층 구조나 망 구조를 갖는 트리와 그래프가 있다.

서로 관련 있는 필드들로 구성 된 레코드의 집합인 파일에 대한 자료구조로

보조 기억 장치에 데이터가 실제로 기록 되는 자료구조이다.


파일 구조는 파일의 구성 방식에 따라 순차 파일과 색인 파일, 직접 파일 등이 있다.



이상으로 자료구조의 분류에 대해 알아보았습니다.

코딩은 누구나 할 수는 있지만 모두가 같은 개발자는 아닙니다.

프로와 아마추어를 가르게 되는 것은 '얼마나 효율적인 프로그램을 구성하느냐'에 대한 것 입니다.

'Data Structure' 카테고리의 다른 글

선택 정렬(Selection sort)  (0) 2016.03.22
정렬(Sorting)  (0) 2016.03.22
트리(Tree)  (0) 2016.03.18
큐(Queue)  (0) 2016.03.17
스택(stack)  (0) 2016.03.16