Введение
Основная единица структуры данных. Узел — это базовая единица структуры данных, такой как связный список или структура данных в виде дерева. Узлы содержат данные и могут также содержать ссылки на другие узлы. Связи между узлами часто реализуются посредством указателей.
A node is a basic unit of a data structure, such as a linked list or tree data structure. Nodes contain data and also may link to other nodes. Links between nodes are often implemented by pointers.
Узлы и деревья
Узлы часто организуются в древовидные структуры. Узел представляет информацию, содержащуюся в единой структуре данных. Эти узлы могут содержать значение или условие, либо выступать в качестве другой независимой структуры данных. Каждый узел имеет одного родительского узла. Наивысшая точка в древовидной структуре называется корневым узлом, который не имеет родительского узла, но является родителем или "прародителем" всех узлов, расположенных ниже него в дереве. Высота узла определяется общим количеством ребер на пути от этого узла до самого дальнего листового узла, а высота дерева равна высоте корневого узла. Глубина узла определяется расстоянием между этим узлом и корневым узлом. Корневой узел имеет глубину, равную нулю. Данные могут быть обнаружены по этим сетевым путям. IP-адрес использует подобную систему узлов для определения своего местоположения в сети.
Определения
Ребенок: Дочерний узел – это узел, отходящий от другого узла. Например, компьютер с доступом в интернет можно рассматривать как дочерний узел узла, представляющего интернет. Обратной связью является отношение родительского узла. Если узел C является дочерним узлом узла A, то A является родительским узлом узла C.
Степень: Степень узла – это количество дочерних узлов данного узла.
Глубина: Глубина узла A – это длина пути от узла A до корневого узла. Корневой узел имеет глубину 0.
Ребро: Соединение между узлами.
Лес: Набор деревьев.
Высота: Высота узла A – это длина самого длинного пути через дочерние узлы к листовому узлу.
Внутренний узел: Узел, имеющий хотя бы одного дочернего узла.
Листовой узел: Узел, не имеющий дочерних узлов.
Корневой узел: Узел, выделяющийся среди остальных узлов дерева. Обычно изображается как верхний узел дерева.
Сестринские узлы: Это узлы, связанные с одним и тем же родительским узлом.
Degree: the degree of a node is the number of children of the node. Depth: the depth of node A is the length of the path from A to the root node. The root node is said to have depth 0. Edge: the connection between nodes. Forest: a set of trees. Height: the height of node A is the length of the longest path through children to a leaf node. Internal node: a node with at least one child. Leaf node: a node with no children. Root node: a node distinguished from the rest of the tree nodes. Usually, it is depicted as the highest node of the tree. Sibling nodes: these are nodes connected to the same parent node.
Языки разметки
Еще одно распространенное применение деревьев узлов – веб-разработка. В программировании XML используется для обмена информацией как между программистами, так и между компьютерами. Благодаря этому XML применяется для создания стандартных протоколов связи, используемых в офисном программном обеспечении, и является основой для разработки современных языков веб-разметки, таких как XHTML. Хотя подход к HTML и CSS для программиста схож, именно они обычно используются для разработки текста и дизайна веб-сайтов. В то время как XML, HTML и XHTML предоставляют язык и средства выражения, DOM выступает в роли переводчика.
Объект узла
Объект узла представлен одним узлом в дереве. Это может быть элементный узел, атрибутный узел, текстовый узел или любой тип, описанный в разделе "тип узла". Все объекты могут наследовать свойства и методы для работы с родительскими и дочерними узлами, но не все объекты имеют родительские или дочерние узлы. Например, при попытке добавить дочерние узлы к текстовому узлу, который не может их содержать, возникает ошибка DOM. К объектам в дереве DOM можно обращаться и управлять ими с помощью методов, определенных для этих объектов. Публичный интерфейс DOM специфицирован в его прикладном программном интерфейсе (API). История Document Object Model тесно связана с историей "войн браузеров" конца 1990-х годов между Netscape Navigator и Microsoft Internet Explorer, а также с историей JavaScript и JScript – первых скриптовых языков, получивших широкое распространение в движках рендеринга веб-браузеров.