트리 2

[자료구조] 트리

트리의 구성 노드: 트리의 항목/트리에 저장되는 데이터의 묶음 부모노드-자식노드: 상하 계층구조가 있고 직접적으로 연결된 노드들로서 상위계층의 부모 노드와 하위계층의 자식 노드를 의미함 루트 노드: 트리의 최상위 노드(부모가 없는 노드) 서브트리: 부모 노드를 삭제하면 생기는 트리들 잎 노드: 트리의 맨 끝(바닥)에 있으면서, 자신의 서브트리를 갖지 않는 노드 진입/진출 차수 루트 노드: 진입 차수 = 0 루트를 제외한 모든 노드의 진입 차수: 1 잎 노드: 진출 차수 = 0 내부 노드와 형제 내부 노드: 루트도 아니고 잎도 아닌 노드 형제: 같은 부모를 갖는 노드들 트리의 레벨 노드의 레벨: 루트로부터 그 노드까지 이어진 선(경로)의 길이 트리의 깊이: 트리의 레벨에서 가장 큰 값에 1을 더한 것 추상..

[컴퓨터과학개론] 자료구조

자료구조 자료 사이의 논리적 관계를 컴퓨터나 프로그램에 적용하기 위해서는 자료의 추상화가 필요함 → 자료구조(data structure): 추상화를 통해 자료의 논리적 관계를 구조화한 것 자료가 복잡해지거나 소프트웨어가 복잡해질수록 자료구조의 중요성이 강조됨 추상화: 공통적인 개념을 이용하여 같은 종류의 다양한 객체를 정의하는 것 자료(데이터)의 추상화: 다양한 객체를 컴퓨터에서 표현하고 활용하기 위해 필요한 데이터의 구조에 대해서 공통의 특징만을 뽑아 정의한 것 자료의 추상화와 구조화가 적절히 이루어지지 못하면 소프트웨어는 비효율적으로 개발되거나 비효율적으로 수행되거나 소프트웨어의 확장성에 문제가 생기거나 소프트웨어의 유지보수에 문제가 생기거나 할 수 있음 미리 정의된 자료구조 프로그래밍 언어에서 제공..

CS 2023.11.19