개발 12

자료구조 - 2

트리 1. 트리의 개념 트리는 데이터 간의 관계를 나타내는 비선형 자료구조로 특정 조직의 조직도를 대표적인 예로 들 수 있다. 트리는 데이터가 저장되는 노드와 다른 노드를 연결하는 가지로 구성되며 여러 가지들을 이용하여 계층적인 관계를 갖는다. 각 노드의 정보 항목과 뻗어져 나가는 가지를 합쳐 트리라고 부르는데 아래 그림에는 10개의 노드와 9개의 가지가 존재한다. 내부가 모두 비어있는 트리인 빈트리가 아닐 경우 최상위 노드를 루트라 부르며 사장실이 루트가 된다. 각 노드에서 하단으로 향하는 가지의 수를 차수라고 부르며 사장실의 차수는 3개, 그 외의 노드의 차수는 1개로 볼 수 있고(최 하단 팀 제외) 해당 트리의 차수를 얘기할 때는 제일 큰 차수인 3이 된다.트리에는 단말 노드 또는 잎 노드가 있는데..

개발/CS 2021.12.08

자료구조 - 1

1. 자료구조란? 자료(데이터)의 효율적인 처리를 위해 자료들 간의 논리적 관계를 추상화를 통해 구조화한 것을 자료 구조라 부른다. 여기서 말하는 추상화란 시내버스, 고속버스, 공항버스 등을 묶어 버스라 부르고 버스, 지하철, 택시를 묶어 대중교통이라고 부르는 것처럼 자료들이 가지는 공통의 특징만을 뽑아 정의한 것이다. 개발자가 사용하는 프로그래밍 언어에서의 자료구조의 형태는 '미리 정의된 자료구조'와 개발자가 정의하여 사용하는 '사용자 정의 자료구조'로 구분된다. 미리 정의된 자료구조는 해당 언어가 설계단계나 컴파일러 단계에서 개발자에게 제공하는 자료구조이며 사용자 정의 자료구조는 개발 중 개발자에 의해 만들어진 리스트, 스택, 큐, 트리와 같은 자료구조이다. 부적절한 자료구조의 사용은 개발의 복잡도를..

개발/CS 2021.12.06