From Latin nodus, the term node has different uses in the fields of the astronomy, the physical and the computing.
For astronomy, a node is each opposite point where the orbit of a star intersects the ecliptic. It can be spoken of ascending node (when the body follows the orbit passing from south to north) or descending node (if it passes in the opposite direction). These nodes are diametrically opposite.
In the realm of physics, a node is a point that remains fixed in a vibrating body. It is, therefore, the point of a standing wave that has zero amplitude at any time. For example: in a vibrating string, the nodes are usually the ends.
Another use of the node concept is found in electronics, where it is a means of connection between two or more elements of a circuit.
Acronym NODE comes from Documentary Newscast and it was the name of a short news program that Spanish cinemas were required to show before films between 1942 Y 1981.
A node, in computing, is a component that is part of a net. In other words, whether it is the Internet or the Intranet (used in closed areas, with limited access to authorized users), each server or computer constitutes a node and is connected to one or more other nodes.
Computer programming considers that a node is each of the elements from a linked list, tree, or graph in a data structure. Each node has its own characteristics and has several fields; at least one of these must serve as a reference point for another node.
The linked list
It is a data structure that can be used for the implementation of new structures (such as queues, stacks and their derivatives) and is made up of a series of nodes that store, in addition to the desired information, a link, a pointer or a reference to the node that precedes it, the one after it, or one to each. The fundamental advantage of a linked list compared to a conventional vector is that its elements do not have a rigid order or are related to the one they had at the time of being stored, but rather that it depends on the link that each node has, and can be modified when so desired.
Linked lists are a type of fact that is self-referencing, since they have a connection with another element that belongs to the same type. It is worth mentioning that, although they allow the intersection and elimination of their nodes, they do not allow access to them randomly. Among the different types of linked list, you will find the simple, the doubly linked, the circular and the doubly circular.
There are many languages programming through which it is possible to implement a linked list; some examples are Scheme and Lisp, which offer objects of this type, as well as methods for their convenient administration. Within the group of imperative and object-oriented languages, there are also tools that facilitate their creation.
It is interesting to note that a node can contain another list; This practice, although very complex and unnecessary for a simple application, can be extremely useful and allow a very high level of optimization. Lisp was the first language in implementing this model, but over time it became a common aspect of functional type programming.
Finally, linked lists can be created dynamically (that is, at runtime) or by hand, by loading by a person, and are very common in bases of high volume data.