Différence entre les tableaux et les listes de tableaux

Différence entre les tableaux et les listes de tableaux
Différence entre les tableaux et les listes de tableaux

Vidéo: Différence entre les tableaux et les listes de tableaux

Vidéo: Différence entre les tableaux et les listes de tableaux
Vidéo: Différence entre un interpréteur et un compilateur ? 🅲 MOOC 2024, Juillet
Anonim

Arrays vs Arraylists

Les tableaux sont la structure de données la plus couramment utilisée pour stocker une collection d'éléments. La plupart des langages de programmation fournissent des méthodes pour déclarer facilement des tableaux et accéder aux éléments des tableaux. Une liste de tableaux peut être considérée comme un tableau dynamique, dont la taille peut augmenter. Pour cette raison, le programmeur n'a pas besoin de connaître la taille de l'arraylist lorsqu'il la définit.

Que sont les tableaux ?

Montré à la figure 1, est un morceau de code généralement utilisé pour déclarer et affecter des valeurs à un tableau. La figure 2 montre à quoi ressemblerait un tableau dans la mémoire.

valeurs entières[5];

values[0]=100;

valeurs[1]=101;

valeurs[2]=102;

values[3]=103;

values[4]=104;

Figure 1: Code pour déclarer et affecter des valeurs à un tableau

100 101 102 103 104
Index: 0 1 2 3 4

Figure 2: tableau stocké dans la mémoire

Code ci-dessus, définit un tableau qui peut stocker 5 entiers et ils sont accessibles en utilisant les indices 0 à 4. Une propriété importante d'un tableau est que, le tableau entier est alloué comme un seul bloc de mémoire et chaque élément obtient son propre espace dans le tableau. Une fois qu'un tableau est défini, sa taille est fixe. Donc, si vous n'êtes pas sûr de la taille du tableau au moment de la compilation, vous devrez définir un tableau suffisamment grand pour être du bon côté. Mais, la plupart du temps, nous allons en fait utiliser moins d'éléments que nous n'en avons alloués. Ainsi, une quantité considérable de mémoire est en fait gaspillée. D'un autre côté, si le "tableau suffisamment grand" n'est pas assez grand, le programme planterait.

Que sont les Arraylists ?

Une liste de tableaux peut être considérée comme un tableau dynamique, dont la taille peut croître. Par conséquent, les listes de tableaux sont idéales pour être utilisées dans une situation où vous ne connaissez pas la taille des éléments requis au moment de la déclaration. En Java, les listes de tableaux ne peuvent contenir que des objets, elles ne peuvent pas contenir directement des types primitifs (vous pouvez placer les types primitifs dans un objet ou utiliser les classes wrapper des types primitifs). Généralement, les listes de tableaux sont fournies avec des méthodes pour effectuer l'insertion, la suppression et la recherche. La complexité temporelle de l'accès à un élément est o(1), tandis que l'insertion et la suppression ont une complexité temporelle de o(n). En Java, les listes de tableaux peuvent être parcourues en utilisant des boucles foreach, des itérateurs ou simplement en utilisant les index.

Quelle est la différence entre les tableaux et les listes de tableaux

Même si les tableaux et les listes de tableaux sont similaires dans le sens où les deux sont utilisés pour stocker des collections d'éléments, ils diffèrent dans la façon dont ils sont définis. La taille du tableau doit être donnée lorsqu'un tableau est défini, mais vous pouvez définir une liste de tableaux sans connaître la taille réelle. Vous pouvez ajouter des éléments à une liste de tableaux après sa définition, ce qui n'est pas possible avec les tableaux. Mais en Java, les listes de tableaux ne peuvent pas contenir de types primitifs, mais les tableaux peuvent être utilisés pour contenir des types primitifs. Mais si vous avez besoin d'une structure de données dont la taille peut varier, arraylist serait le meilleur choix.

Conseillé: