A data structure is an efficient way to store and organize data with associated operations in order to take advantage as long as possible it.
Algorithm can be defined as a simple and objective sequence of instructions to figure a certain problem out. Each instruction is an information that indicates to the computer an basic action to being executed.
In Computer Science, a list is a linear data structure used to store and organize data on a computer. A structure of type list is a sequence of elements of the same type. Its elements have an abstracted internal structure, that is, its complexity is arbitrary and doesn't affect its functioning. Besides that, a list can have repeated elements, as well as it can be sorted or unordered, rely on the application.
In computing, a queue is nothing more than a finite set of items (of the same type) waiting for a service or processing. This' a very common flow control in computing. As can might imagine, a queue, as well as a list, is a sequence of elements, but unlike lists, items of a queue obey an entry and exit order. An item can only be removed from the queue after all items in front of it have also been removed.
A stack is a finite set of items sub over the same topic, but unlike lists, the items of a stack are stacked on top of each other. Thus, to access a certain element of the stack, all elements that are on top of it must be removed. For this reason, stacks are known as last-in, first-out or LIFO structures: elements are popped from the stack in the reverse order of how they were inserted.
A graph is a mathematical model that stands for the relationships between objects in a given set and it's defined in terms of two sets:
- A set V of vertices that are the items represented in a graph.
- A set A of edges that are used to connect any pair of vertices. In this case, two vertices are connected according to previously established criteria.
A tree is a mathematical abstraction used to stand for non-linear hierarchical structures of modeled objects. As with graphs, a tree can also be defined using a set of nodes (or vertices) which are items stood for in the tree and rely on the nature of the modeled problem and edges which are used to connect any pair of nodes or vertices.
Sorting algorithm is that one that put the elements of each sequence in a determined predefined order. They can be classified as internal or external ordering. Some sorting algorithms are:
- Bubble Sort
- Insertion Sort
- Merge Sort
- Quick Sort
- Sellection Sort
- Shell Sort
- others...
Well, that's it! 👨💻 See ya!