노드 (컴퓨터 과학)

위키백과, 우리 모두의 백과사전.

그래프 이론에서 이 그림은 단순한 네트워크의 뷰를 제공하며 여기에서 숫자 각각은 각기 다른 노드를 나타낸다.

노드(node)는 컴퓨터 과학에 쓰이는 기초적인 단위이다. 노드는 대형 네트워크에서는 장치나 데이터 지점(data point)을 의미한다. 개인용 컴퓨터, 휴대전화, 프린터와 같은 정보처리 장치들이 노드이다. 인터넷에서 노드를 정의할 때 노드는 IP 주소를 보유한 어떠한 것도 될 수 있다. 노드는 더 커다란 자료 구조의 일부분 하나 하나를 의미할 수 있는데 이를테면 연결 리스트라든지 트리 자료 구조를 들 수 있다. 노드는 데이터를 포함하며 다른 노드와 연결될 수도 있다. 노드 간 링크는 포인터에 의해 구현되기도 한다.

노드와 트리[편집]

크기 9와 높이 3의 단순 이진 트리. 루트 노드의 값은 2이다. 위의 트리는 정렬되어 있지 않고 균형이 잡혀져 있지 않다.

노드는 트리 구조로 정렬되기도 한다. 노드는 하나의 자료 구조에 포함된 정보를 표현한다. 이 노드들은 값이나 조건을 포함할 수 있으며 다른 독립된 자료 구조의 역할을 할 가능성이 있다. 노드는 하나의 부모 노드에 의해 표현된다. 트리 구조의 가장 높은 지점은 루트 노드(root node)로 부르며 이 노드에는 부모 노드가 없으나 해당 트리 아래에 속한 모든 노드의 부모노드나 조부모 노드의 역할을 맡는다. 노드의 높이는 해당 노드에서 가장 거리가 먼 리프 노드(leaf node)까지의 경로 상의 간선의 전체 수에 의해 결정되며 트리의 높이는 루트 노드의 높이와 동등하다.[1] 노드의 깊이(depth)는 특정 노드와 루트 노드 간의 거리에 의해 결정된다. 루트 노드는 0의 깊이를 갖는다고 말할 수 있다.[2] 데이터는 이러한 네트워크 경로를 따라 탐지할 수 있다.[3] 모든 IP 주소는 이러한 종류의 시스템의 노드를 사용하여 네트워크 내의 위치를 정의한다.

각주[편집]

  1. “tree (data structure)”. 미국 국립표준기술연구소. 2014년 11월 24일에 원본 문서에서 보존된 문서. 
  2. Teukolsky, Roselyn (2013). 《Barron's AP Computer Science A》. Barron's. ISBN 978-1-4380-0152-4. 
  3. “Simply Scheme: Introducing Computer Science ch 18: Trees”. College Of Engineering, 캘리포니아 대학교 버클리. 2013년 12월 22일에 원본 문서에서 보존된 문서. 

외부 링크[편집]