Diferencia entre vector y lista

Diferencia entre vector y lista

Vector VS Lista

A menudo confuso para los programadores, los vectores y las listas son secuencias utilizadas en las tenencias de matriz en C ++ y Java. Los dos términos contienen direcciones de matriz pero con diferentes métodos de mantenimiento de matrices.
Lo básico que necesitamos saber es que una matriz es una "lista" que contiene algunos o todos los datos, yo.mi., enteros, puntos flotantes o personajes y se define en los soportes "[]."
En realidad, los vectores y listas actúan de acuerdo con las instancias. Así que echemos un vistazo a estos dos términos uno por uno.

Vectores
Los vectores se utilizan en la retención de matriz y los elementos de acceso. Aquí puede acceder a cualquier elemento al azar usando el operador "[]". Por lo tanto, se hace fácil mirar a través de todos los elementos o un elemento específico con una operación vectorial. Entonces, si inserta algún objeto al final, al principio o en el medio, entonces los vectores tienen un punto positivo porque puede acceder a la dirección aleatoria y realizar cambios allí. Sin embargo, los vectores son un poco lentos en comparación con los objetos de la lista. Los vectores se consideran objetos sincronizados, eficientes en acceso aleatorio, y mantienen adecuadamente los datos con una lista sincronizada. Se elige un vector cuando no haya necesidad de insertar o eliminar en el
medio (lista) o desde el frente.
El número de elementos en una matriz puede variar dramáticamente.
Ejemplo:
Vector V;
V.insertar (V.begin (), 3);
afirmar (V.size () == 1 && V.capacidad ()> = 1 && v [0] == 3);

Liza
Las listas son "secuencias de doble vinculación" que admiten el recorrido hacia adelante y hacia atrás. El tiempo que se toma en la inserción y eliminación al principio, final, y en el medio es constante. La inserción y el empalme entre listas vinculadas no invalidan ninguna iteración en los elementos. Solo la eliminación invalida la iteración. No están sincronizados, por lo que no son accesibles al azar. El orden de las iteraciones puede cambiar de acuerdo con el usuario, pero no afecta ningún cambio en los elementos. Son más rápidos que los vectores y son ideales para la inserción y la eliminación en el principio, el medio y el final de las listas de elementos.

Ejemplo:
#incluir
// Enumere la definición de clase de clase
… .
int main ()

int Array [4] = 2, 6, 4, 8;
std :: valores de lista;
std :: list otros valores;

Resumen:
1. Una lista no está sincronizada mientras un vector está.
2. Las listas no tienen un tamaño predeterminado, mientras que un vector tiene un tamaño predeterminado de 10.
3. Las listas y los vectores son matrices de crecimiento dinámico.
4. Una lista no es segura de hilo, mientras que un vector es seguro de subprocesos.
5. Las listas, ya que se aplican solo a la suma y la eliminación en la parte delantera y trasera, son más rápidas mientras
Los vectores toman más CPU.
6. Un vector crece por su tamaño dos veces mientras una lista disminuye a la mitad, yo.mi., 50 por ciento.