본문

선형구조와 비선형구조

반응형

자료구조는 크게 3가지 선형 구조, 비선형 구조, 파일 구조로 분류할 수 있는데

이번 글에서는 선형구조와 비선형구조의 자료구조 특징을 알아보자 ㄱㄱ

 

 

1. 선형구조

- 배열(선형 리스트), 연결 리스트, 스택, , 데크

- 데이터가 연속적으로 연결되어 있는 모양으로 구성하는 방법

- 포인터 등을 사용하여 자료를 연결하면 그 결과가 자료에 일직선상에 표시되거나 하나의 원상에 표시되는 구조

 

 

a) 연결리스트

- 자료 항목의 순서에 따라 노드의 포인터 부분을 이용하여 서로 연결시킨 자료구조

- 노드의 삽입, 삭제 작업이 용이하다

- 기억공간이 연속적으로 놓여있지 않아도 저장이 가능하다

 

- 접근 속도가 느리다 (포인터를 찾아가는 시간이 필요하기 때문에 배열에 비해 접근속도 느림)

- 중간 노드의 연결이 끊어지면 그 다음 노드를 찾기 힘들다

 

b) 스택

- 리스트의 한쪽 끝으로만 자료의 삽입, 삭제 작업이 이루어지는 자료구조

- LIFO / 인터럽트가 발생하여 복귀주소를 저장할 때 사용

 

c)

- 한쪽에서는 삽입 작업이, 다른 쪽에서는 삭제 작업이 이루어지도록 구성

- 시작과 끝을 표시하는 두 개의 포인터가 있다

- 창구 업무처럼 서비스 순서를 기다리는 등의 대기 행렬 처리에 사용

 

d) 데크(DEQ : Double Ended Queue)

- 삽입과 삭제가 리스트의 양쪽 끝에서 모두 발생할 수 있는 자료구조

- 스택과 큐의 장점만 따서 구성한 것

- 입력이 한쪽하서만 발생하고 출력은 양쪽에서 일어날 수 있는 입력제한,

  입력은 양쪽에서 일어나고 출력이 한쪽에어만 이루어지는 출력제한이 있다

 


2. 비선형구조

a) 트리

- 정점(node)와 선분(brabch)을 이용하여 사이클을 이루지 않도록 구성한 그래프의 형태

- 방향성이 있다 (부모와 자식 계층 구조가 명확)

 

b) 그래프

- 정점(node)와 선분(brabch)을 이용하여 사이클을 이루도록 구성

- 순환이 된다

 

 

반응형

공유

댓글