Différence entre le vecteur et la liste

Différence entre le vecteur et la liste

Vector vs liste

Souvent confus pour les programmeurs, les vecteurs et les listes sont des séquences utilisées dans les avoirs de tableau en C ++ et Java. Les deux termes contiennent les adresses du tableau mais avec des méthodes différentes de maintien des tableaux.
La chose fondamentale que nous devons savoir est qu'un tableau est une «liste» qui contient certaines ou toutes les données, je.e., entiers, points flottants ou personnages et est défini entre parenthèses «[]."
En fait, les vecteurs et les listes agissent en fonction des cas. Alors jetons un coup d'œil à ces deux termes un par un.

Vecteurs
Les vecteurs sont utilisés dans la rétention du tableau et l'accès aux éléments. Ici, vous pouvez accéder à n'importe quel élément au hasard en utilisant l'opérateur «[]». Il devient donc facile de parcourir tous les éléments ou un élément spécifique avec une opération vectorielle. Donc, si vous insérez un objet à la fin, au début ou au milieu, alors les vecteurs ont un point plus car vous pouvez accéder à l'adresse aléatoire et y apporter des modifications. Cependant, les vecteurs sont un peu lents par rapport aux objets de liste. Les vecteurs sont considérés comme des objets synchronisés, efficaces dans un accès aléatoire, et ils détiennent correctement les données avec une liste synchronisée. Un vecteur est choisi chaque fois qu'il n'est pas nécessaire d'insérer ou de supprimer dans le
Middle (liste) ou de l'avant.
Le nombre d'éléments dans un tableau peut varier considérablement.
Exemple:
Vector V;
V.insérer (V.begin (), 3);
affirmer (V.size () == 1 && v.capacité ()> = 1 && v [0] == 3);

Listes
Les listes sont des «séquences à double liaison» prenant en charge la traversée avant et vers l'arrière. Le temps pris dans l'insertion et la suppression au début, à la fin et au milieu est constant. L'insertion et l'épissage entre les listes liées n'invalident aucune itération dans les éléments. Le retrait invalide l'itération. Ils ne sont pas synchronisés donc ils ne sont pas accessibles au hasard. La commande des itérations peut changer en fonction de l'utilisateur, mais elle n'affecte aucun changement dans les éléments. Ils sont plus rapides que les vecteurs et sont idéaux pour l'insertion et la suppression au début, au milieu et à la fin des listes d'éléments.

Exemple:
#inclure
// Répertoriez la définition de template de classe
… .
int main()

int array [4] = 2, 6, 4, 8;
STD :: Liste des valeurs;
STD :: Liste d'autres valeurs;

Résumé:
1. Une liste n'est pas synchronisée pendant qu'un vecteur est.
2. Les listes n'ont pas de taille par défaut tandis qu'un vecteur a une taille par défaut de 10.
3. Les listes et les vecteurs sont tous deux des tableaux en croissance dynamique.
4. Une liste n'est pas sûre de fil alors qu'un vecteur est sûr de fil.
5. Les listes, car elles ne s'appliquent qu'à l'addition et à la suppression à l'avant et à l'arrière, sont plus rapides
Les vecteurs prennent plus de processeur.
6. Un vecteur augmente par sa taille deux fois tandis qu'une liste diminue à la moitié, je.e., 50 pourcent.