array :
Una array es una colección de elementos de datos homogéneos (del mismo tipo) almacenados en ubicaciones de memoria contiguas . Por ejemplo, si una array es de tipo “int”, solo puede almacenar elementos enteros y no puede permitir elementos de otros tipos como double, float, char, etc.
- La array es una estructura de datos lineal en la que los elementos se almacenan en ubicaciones de memoria contiguas.
- En una array, almacenamos elementos del mismo tipo de datos juntos.
- Tiene direccionamiento basado en índices ya que los elementos se almacenan en ubicaciones de memoria contiguas.
- El índice comienza desde 0 y sube a (N – 1) donde N es el número de elementos en la array.
- Como las arrays permiten el acceso aleatorio de elementos en O(1). Hace que acceder a los elementos por posición sea más rápido.
- La mayor desventaja de una array es que no se puede aumentar su tamaño.
A continuación se muestra la representación general de la array:
Árbol :
El árbol representa los Nodes conectados por aristas. El árbol binario o árbol de búsqueda binaria específicamente. Un árbol binario es una estructura de datos especial utilizada con fines de almacenamiento de datos. Un árbol binario tiene una condición especial de que cada Node puede tener un máximo de dos hijos. Un árbol binario tiene los beneficios tanto de una array ordenada como de una lista enlazada, ya que la búsqueda es tan rápida como en una array ordenada y las operaciones de inserción o eliminación son tan rápidas como en una lista enlazada.
- Un árbol es un grupo de Nodes a partir del Node raíz.
- Cada Node tiene un padre específico y puede o no tener varios Nodes secundarios.
- Cada Node contiene un valor y referencias a los hijos.
- Es una especie de estructura de datos de gráficos pero no tiene ciclos y está completamente conectado.
- El mejor ejemplo para visualizar la estructura de datos del árbol es visualizar un árbol con raíz natural.
Diferencia tabular entre array y árbol :
Parámetro | Formación | Árbol |
Naturaleza | Es una estructura de datos lineal. | Es una estructura de datos lineal no lineal. |
Noción básica | 0º índice de la array | La raíz del árbol |
Sucesor | Elemento en índice_referencia + 1 | Nodes secundarios del Node actual. |
Predecesor | Elemento en referencia_índice – 1 | Padre del Node actual. |
Intuición Natural | Modelo de escalera con la escalera base como índice i -ésimo | El mejor ejemplo para visualizar la estructura de datos del árbol es visualizar un árbol con raíz natural. |
Orden de Inserción | Por lo general, un elemento insertado en current_index + 1 | Depende del tipo de árbol. |
Orden de eliminación | En cualquier índice, pero después de que se reordenen los elementos eliminados | Depende del tipo de árbol. |
Complejidad de inserción |
O(1)->Inserción al final. O(N)->Inserción en índice aleatorio. |
Depende del tipo, por ejemplo AVL- O (log 2 N). |
Complejidad de eliminación |
O(1)->Borrado desde el final. O(N)->Eliminación de un índice aleatorio. |
Depende del tipo, por ejemplo AVL- O (log 2 N). |
buscando | EN) | Depende del tipo, por ejemplo AVL- O (log 2 N). |
Encontrar mínimo | EN) | Depende del tipo, por ejemplo Min Heap- O (log 2 N). |
encontrar máximo | EN) | Depende del tipo, por ejemplo Max Heap- O (log 2 N). |
Esta vacio | O(1) | Mayormente O(1) |
Acceso aleatorio | O(1) | Mayormente O(N) |
Solicitud | Las arrays se utilizan para implementar otras estructuras de datos, como listas, montones, tablas hash, deques, colas y pilas. | Búsqueda rápida, insertar, eliminar, etc. |
Publicación traducida automáticamente
Artículo escrito por parthbanathia y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA