노드(컴퓨터 과학)

Node (computer science)

노드연결된 목록 또는 트리 데이터 구조와 같은 데이터 구조의 기본 단위입니다.노드에는 데이터가 포함되어 있으며 다른 노드에 링크될 수도 있습니다.노드 간의 링크는 포인터에 의해 구현되는 경우가 많습니다.P2P 네트워크에 참여하는 인터넷에 연결된 컴퓨터입니다.

그래프 이론에서 이미지는 네트워크의 단순화된 뷰를 제공합니다.각 숫자는 다른 노드를 나타냅니다.

노드와 트리

크기가 9이고 높이가 3인 단순한 바이너리 트리로, 값이 2인 루트 노드입니다.위의 트리는 불균형하여 정렬되지 않았습니다.

노드는 종종 트리 구조로 배열됩니다.노드는 단일 데이터 구조에 포함된 정보를 나타냅니다.이러한 노드는 값 또는 조건을 포함할 수 있으며, 다른 독립적인 데이터 구조 역할을 할 수도 있습니다.노드는 단일 부모 노드로 표시됩니다.트리 구조에서 가장 높은 지점을 루트 노드라고 합니다. 루트 노드에는 상위 노드가 없지만 트리에서 그 아래에 있는 모든 노드의 부모 또는 '대형' 역할을 합니다.노드의 높이는 해당 노드에서 가장 먼 리프 노드까지의 경로 상의 총 에지 수에 따라 결정되며 트리의 높이는 루트 [1]노드의 높이와 동일합니다.노드의 깊이는 특정 노드와 루트 노드 사이의 거리에 따라 결정됩니다.루트 노드의 깊이는 [2]0이라고 합니다.데이터는 이러한 네트워크 [3]경로를 따라 검색할 수 있습니다.IP 주소는 이러한 종류의 노드 시스템을 사용하여 네트워크 내의 위치를 정의합니다.

정의들

  • 하위: 하위 노드는 다른 노드에서 확장되는 노드입니다.예를 들어, 인터넷에 접속할 수 있는 컴퓨터는 인터넷을 나타내는 노드의 자노드로 간주할 수 있습니다.역관계는 부모 노드의 관계입니다.노드 C가 노드A의 자녀일 경우 A는 C의 부모 노드입니다.
  • 정도: 노드의 정도는 노드의 자식 수입니다.
  • 깊이: 노드 A의 깊이는 A에서 루트 노드까지의 경로 길이입니다.루트 노드의 깊이는 0이라고 합니다.
  • Edge: 노드 간의 연결입니다.
  • : 나무 세트.
  • 높이: 노드 A의 높이는 하위 노드를 통과하는 가장 긴 경로의 길이입니다.
  • 내부 노드: 하나 이상의 하위 노드가 있습니다.
  • 리프 노드: 하위 노드가 없는 노드입니다.
  • 루트 노드: 나머지 트리 노드와 구별되는 노드.보통, 이것은 트리의 가장 높은 노드로 묘사됩니다.
  • 형제 노드: 동일한 상위 노드에 연결된 노드입니다.

마크업 언어

노드 트리의 또 다른 일반적인 용도는 웹 개발입니다.프로그래밍에서 XML은 컴퓨터 프로그래머와 컴퓨터 사이의 정보를 똑같이 전달하기 위해 사용됩니다.이러한 이유로 XML은 오피스 생산성 소프트웨어에서 사용되는 공통 커뮤니케이션 프로토콜을 작성하기 위해 사용되며 XHTML과 같은 최신마크업 언어 개발의 기반이 됩니다.프로그래머에 의한 접근 방식은 비슷하지만 HTML과 CSS는 일반적으로 웹 사이트 텍스트와 디자인을 개발하기 위해 사용되는 언어입니다.XML, HTML 및 XHTML은 언어와 표현을 제공하지만 DOM은 [4]번역자 역할을 합니다.

노드 타입

트리의 다양한 노드 유형은 특정 인터페이스에 의해 나타납니다.즉, 노드 유형은 다른 노드와의 통신 방법에 따라 정의됩니다.각 노드에는 형제 또는 리프 등의 노드 유형을 지정하는 노드 유형 속성이 있습니다.예를 들어 노드 유형 속성이 노드의 상수 속성인 경우 이 속성은 노드의 유형을 지정합니다.따라서 노드 유형 속성이 상수 노드 ELEMENT_NODE인 경우 이 노드 객체가 객체 요소임을 알 수 있습니다.이 오브젝트는 Element 인터페이스를 사용하여 특정 노드의 모든 메서드와 속성을 정의합니다.

다양한 W3C World Wide Web Consortium 노드 유형 및 설명:

  • 문서는 문서 전체를 나타냅니다(DOM 트리의 루트 노드).
  • Document Fragment는 문서의 일부를 포함할 수 있는 "경량" 문서 개체를 나타냅니다.
  • 문서유형은 문서에 대해 정의된 엔티티에 대한 인터페이스를 제공합니다.
  • ProcessingInstruction은 처리 명령을 나타냅니다.
  • EntityReference는 엔티티 참조를 나타냅니다.
  • 요소는 요소를 나타냅니다.
  • Attr은 속성을 나타냅니다.
  • 텍스트는 요소 또는 속성의 텍스트 내용을 나타냅니다.
  • CDATAStection은 문서의 CDATA 섹션을 나타냅니다(파서에 의해 해석되지 않는 텍스트).
  • 코멘트는 코멘트를 나타냅니다.
  • 엔티티는 엔티티를 나타냅니다.
  • 표기는 DTD에서 선언된 표기를 나타냅니다.
노드 타입 명명 상수
1 요소_노드
2 Attribute_NODE
3 텍스트_노드
4 CDATA_Section_NODE
5 엔티티_참조_노드
6 엔티티_노드
7 처리_인스트럭션_노드
8 코멘트_노드
9 문서_노드
10 문서_타입_노드
11 문서_프래그먼트_노드
12 표기법_노드

노드 오브젝트

노드 오브젝트는 트리 내의 단일 노드로 나타납니다.요소 노드, 속성 노드, 텍스트 노드 또는 "노드 유형" 섹션에 설명된 모든 유형일 수 있습니다.모든 개체는 상위 노드 및 하위 노드를 처리하기 위한 속성 및 메서드를 상속할 수 있지만 모든 개체에 상위 노드 또는 하위 노드가 있는 것은 아닙니다.예를 들어 하위 노드를 가질 수 없는 텍스트 노드에서 하위 노드를 추가하려고 하면 DOM 오류가 발생합니다.

DOM 트리의 객체는 객체에 대한 메서드를 사용하여 주소를 지정하고 조작할 수 있습니다.DOM의 퍼블릭인터페이스는 Application Programming Interface(API; 응용 프로그램프로그래밍 인터페이스)로 지정됩니다.Document Object Model의 역사는 1990년대 후반 Netscape Navigator와 Microsoft Internet Explorer 의 "브라우저 전쟁"의 역사 및 웹 브라우저의 레이아웃 엔진에 널리 구현된 최초의 스크립트 언어인 JavaScript와 JScript연관되어 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "tree (data structure)". National Institute of Standards and Technology. Archived from the original on 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, University of California, Berkeley. Archived from the original on 2013-12-22.
  4. ^ "XML DOM Introduction". W3Schools. Archived from the original on 2014-06-11. Retrieved 2018-04-07.

외부 링크