La principal estructura de datos de Java

A. matriz

El mismo conjunto de tipos de elementos; da un espacio continuo en la memoria.

En comparación con la lista en términos de ventajas y desventajas:

ventajas:

1) consulta más rápido, debido a que el tamaño de la matriz es fija y es un espacio de memoria continuo, los elementos sólo necesita localizar una consulta en una pieza en particular de la memoria; y la lista de espacio de memoria no continua, por la parte delantera y punteros traseros pedido asociado, la lista de elementos de consulta más lento

 

desventajas:

1) un tamaño fijo, conveniente añadir datos dinámicos (dinámicamente añaden o los datos de borrado afectarán a la mayoría de los elementos de la matriz, más baja que la eficiencia de una lista enlazada); (la lista se puede añadir dinámicamente, los datos de borrado, de alta eficiencia porque los datos antes y después de la lista se asocia con un puntero , añadir o eliminar un elemento afecta sólo alrededor de dos elementos asociados)

java de la matriz es una longitud fija, la longitud no se puede aumentar de forma dinámica. Si desea ampliar la matriz, solamente mediante la redefinición de la matriz, copiar el contenido de la matriz de edad a la nueva matriz.

 

II. Pila

También conocida como la pila, que es una tabla lineal operación está limitada; sólo inserciones y deleciones en la sección de la tabla, el extremo de la pila se llama;

Este último está fuera avanzado de la estructura de datos de la pila.

 

III. Queue

Queue pila y similares es una mesa lineal, salvo que permite la inserción del extremo delantero de la mesa, ser eliminado al final de la tabla, el último es a cabo avanzada de la mesa lineal.

 

IV. Lista

unidad de almacenamiento de lista es una secuencia físicamente no secuencial, no continua de la estructura de almacenamiento lógico, elementos de datos están vinculados por una aplicación lista para el puntero vinculado.

Lista consiste en una serie de nodos, cada elemento de la lista se llama un nodo, un nodo puede generado dinámicamente en tiempo de ejecución, cada nodo que comprende dos partes: un campo de datos que almacena elementos de datos, y el otro es un almacenamiento de direcciones siguiente nodo el campo de puntero; en comparación con mesa de operación lineal, más complicado.

Ventajas y desventajas:

ventajas:

Fue añadido a la lista o elementos de eliminación de velocidad es relativamente rápido, porque la operación de lista de punteros se lleva a cabo mediante la adición o eliminación de elementos y afectan sólo a una parte frontal o un elemento relacionado, sin afectar a otros elementos, y si la matriz añadir o elementos de borrado, la mayoría de los elementos afectarán a toda la matriz, por ejemplo, para eliminar una matriz con 10 elementos en el tercer elemento, entonces es imperativo matriz 4 a través de 10 elementos se dejan a.

 

desventajas:

Descubre más lentamente, ya que la lista está vinculada a través de punteros antes y después de que los elementos de datos, una consulta de los elementos de la matriz no es como una consulta continua más rápido de memoria.

 

-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ------

ArrayList LinkedList 和

estructura de datos 1.ArrayList se implementa sobre la base de matriz dinámica, estructura de datos de lista enlazada basado LinkedList. 
2. Para el acceso al azar get y set, ArrayList LinkedList superior, porque LinkedList para mover el puntero. 
3. Para las operaciones nuevas y borrar agregar y quitar, LinedList ventaja comparativa, porque ArrayList para mover datos.

Resumen: ArrayList interna es el uso de arrays zo-longitud de lograr, es un get y métodos set están gastando un tiempo fijo, pero si los elementos de inserción y elementos de eliminar, a menos que la posición de inserción y deleción en la tabla al final, de lo contrario la sobrecarga código será muy grande, debido a la necesidad de moverse dentro de la matriz.
LinkedList se implementa utilizando una lista doblemente enlazada, por lo reciba le estar muy consume recursos, a menos que la posición de la cabeza desde corta. Sin embargo, los elementos de inserción y borrado lleva tiempo constante.

 

 

V. árbol

Menos exposición aplicación práctica, el concepto de:

Y sólo un específico llamado el nodo raíz (raíz); cuando n> 1, los nodos restantes pueden ser divididos en m (m> 0) disjunta finito establece T1, T2, ..., Tm, cada conjunto Ti (1≤i≤M) son árbol, y T se llama un sub-árbol (rama).
  

 

VI. Tabla Hash

El HashTable (tabla hash) es una implementación de la interfaz del mapa, una mesa lineal es una estructura de almacenamiento especial; pares de valores clave de una forma de almacenamiento de datos, en el que la llave no se puede repetir, el valor se pueden repetir.

La diferencia principal es que HashMap y HashTable 

1) HashTable son thread-safe, mientras HashMap no es hilo de seguridad

2) HashMap permite claves nulas, HashTable permitió


 

Siete majano;

montón de Java está disponible para obtener nueva parte de los programadores de la memoria del ordenador. La estructura de datos montón de árbol binario es un especial (montón es un árbol, en comparación con la matriz, los reactores rápidos de velocidad de inserción, pero lento eliminada).

estructura de datos montón es un árbol binario que tiene las siguientes características:

1. Es un árbol binario completo, es decir, excepto el último nodo de uno de los árboles no necesitan ser completa, el otro de izquierda a derecha de cada capa debe ser completa.

2. A menudo se implementa utilizando matrices.

3. Cada pila montón nodo satisface la condición, es decir para cada valor mayor palabra clave o igual clave valores nodos hijos de este nodo.

 

 

Ocho matriz, lista, conjunto de intercambiables:

1. convierte una lista de arreglo

array String = { "AAA", "AAA", "bbb"};

listado = Arrays.asList (array)

Después de la conversión lista contiene tres elementos

 

2. lista de temas a su vez

ejemplos de conexión:

HashSet hashset = new HashSet (lista);

Después de la conversión, la lista original de los elementos repetidos será removida, HashSet contiene sólo dos elementos

 

Si necesita re-matriz, mediante la conversión de la matriz en una forma que se determine

Publicado 11 artículos originales · ganado elogios 2 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/zhengyin_tmac/article/details/87205922
Recomendado
Clasificación