Tableau dans la structure de données - Explication, fonction et exemples
Publié: 2021-06-21Les structures de données se sont avérées être un élément crucial de presque tous les langages de programmation qui ont été largement appliqués à la plupart des programmes informatiques. C'est à travers les structures de données que les données peuvent être efficacement gérées et accessibles par les programmes, car l'accès et le stockage de données uniques séparément est un processus qui prend du temps. Les algorithmes sont spécialement conçus pour créer des opérations spécifiques nécessaires dans une structure de données. Par conséquent, les structures de données et les algorithmes constituent la base d'applications et de programmes complexes.
Dans cet article, nous allons nous concentrer sur un type de structure de données, c'est-à-dire Array.
Un tableau est un type de structure de données où les éléments ou les données sont stockés à des emplacements contigus. Chaque fois que l'utilisateur dispose d'un ensemble de données avec le même type de données, la structure de données de tableau est l'option pour organiser ces données. La taille d'un tableau dépend de la taille des données. Avant que les éléments ne soient stockés dans un tableau, la taille du tableau doit être définie afin qu'il intègre efficacement tous les éléments. Chaque élément stocké dans un tableau a une valeur d'index qui lui est assignée, ce qui aide à identifier l'emplacement de cet élément dans le tableau. Le premier élément du tableau a une valeur d'index de zéro.
Les termes importants associés à une structure de données de tableau sont :
- Element : Element représente chaque objet ou élément stocké dans la structure de données.
- Index : Index représente l'emplacement de l'élément dans un tableau. Il a une valeur numérique.
La taille d'un tableau change avec différents langages de programmation. Selon la taille, un tableau peut être de deux types : un tableau statique et un tableau dynamique.
Table des matières
1. Tableau statique :
Ces types de tableaux ont leurs tailles prédéfinies lors de leur création. Pour cette raison, les tableaux statiques sont également appelés tableaux fixes ou tableaux de longueur fixe. Le tableau peut être défini de deux manières. Soit les éléments du tableau peuvent être définis lors de la création du tableau, soit la taille du tableau peut être définie lors de la création d'un tableau. Dans ce dernier cas, les éléments n'ont pas à être spécifiés. Les valeurs par défaut peuvent être allouées à un tableau non initialisé ou à des valeurs laissées en mémoire à partir d'allocations précédentes.
Le tableau ne peut pas être réduit ou agrandi une fois la taille définie. Comme la mémoire est allouée lors de la déclaration d'un tableau, seul le compilateur peut détruire le tableau. L'ajout d'un élément n'est pas possible car l'utilisateur ne sait pas s'il y a de la mémoire libre à allouer à l'élément suivant.
Le tableau ci-dessous montre l'exemple de tableaux utilisés dans différents langages de programmation.
Langage de programmation | Contenu de tableau défini | Taille définie du tableau sans contenu |
C++ | marques int[] = {10, 20, 30} ; | marques int[3] ; |
C# | marques int[] = {10, 20, 30} ; | int[] marque = = new int[3] ; |
Java | marques int[] = {10, 20, 30} ; | int[] marque = = new int[3] ; |
Javascript | var marques = [10, 20, 30] ; | var marques = new Array(3); |
Python | points = [10, 20, 30] | points = [Aucun] * 3 |
Rapide | valeurs var :[Int] = [10, 20, 30] | marques var : [Int] = [Int](répétition : 0, nombre : 3) |
2. Tableau dynamique
Comme son nom l'indique, le tableau est dynamique, ce qui signifie que les éléments peuvent être ajoutés ou supprimés pendant l'exécution. Par rapport aux tableaux statiques dont la longueur est fixe, les tableaux dynamiques n'ont pas de longueur ou de taille fixe du tableau. Des fonctions de bibliothèque standard ou des fonctions intégrées sont disponibles dans la plupart des langages de programmation pour créer et gérer des tableaux dynamiques.
Le tableau ci-dessous montre la création d'un tableau dans différents langages de programmation
Langage de programmation | Classer | Ajout d'élément | Suppression de l'élément |
C++ | #include <liste> std :: liste | insérer | effacer |
C# | System.Collections.Generic.List | Ajouter | Retirer |
Java | java.util.ArrayList | ajouter | retirer |
Javascript | Déployer | pousser, coller | pop, épissure |
Python | Lister | ajouter | retirer |
Rapide | Déployer | ajouter | retirer |
Représentation d'un tableau
La représentation d'un tableau varie en fonction de son implémentation dans différents langages de programmation. Le tableau étant une partie importante de la structure de données python , une illustration a été montrée dans le langage de programmation python.
En python, les tableaux de structure de données sont gérés via le mot clé array . Chaque fois que le tableau de mots clés est utilisé, l'utilisateur doit stocker des éléments des mêmes types de données.
La source
Figure 1 : Un exemple de tableau
Selon la figure 1, l'illustration du tableau montre que
- La taille du tableau est de 10, ce qui signifie que 9 éléments peuvent être stockés dans le tableau.
- La valeur d'index a été mentionnée au-dessus du tableau qui commence par la valeur 0.
- Les éléments stockés dans le tableau peuvent être de n'importe quel type de données et l'élément est accessible via leur valeur d'index.
Une autre illustration a été montrée dans la figure 2, où la syntaxe de python et de C++ a été décrite.
La source
Figure 2 : Déclaration de tableau en python et C++ (
Propriétés d'un tableau
Une structure de données tableau a plusieurs propriétés :
- Les éléments stockés dans un tableau ont les mêmes types de données et la même taille, c'est-à-dire que le type de données int aura une taille de 4 octets.
- L'emplacement de mémoire contigu est utilisé pour stocker les éléments d'une structure de données. La plus petite mémoire est allouée au premier élément du tableau.
- Les valeurs d'index sont utilisées pour trouver l'emplacement des éléments dans un tableau. L'indice commence par 0 et est toujours inférieur au nombre total d'éléments du tableau.
- L'accès aléatoire aux éléments du tableau est possible en raison de la valeur d'index disponible. L'adresse de l'élément peut être calculée via l'adresse de base ajoutée à une valeur de décalage.
- Le concept de tableau reste le même dans tous les langages de programmation. Seules l'initialisation et la déclaration varient.
- Le nom du tableau, les éléments et le type de données sont les trois parties qui seront communes à toutes les langues.
Création d'un tableau
La création d'un tableau dans la structure de données python a été illustrée ci-dessous.
- Le module de tableau dans la structure de données python peut être importé pour créer un tableau.
- array(data_type, value_list ) est la syntaxe par laquelle un tableau peut être créé dans la structure de données python .
- Le type de données doit être des entiers réels ou des flottants. Les chaînes ne sont pas autorisées en python.
La figure 2 montre comment créer un tableau en python. Un exemple de code pour montrer comment un module de tableau est importé en python
tableau d'importation
marques = array.array('i', [100,200,300])
imprimer (marques)
La déclaration d'un tableau peut être effectuée par
arrayName = array.array(code de type pour le type de données, [array,items])
Ceci peut être représenté sur la figure 3
La source
Figure 3 : déclaration de tableau en python
Termes importants utilisés lors de la création d'un tableau :
- Identifiant : un nom qui doit être spécifié comme un nom pour les variables
- Module : un module spécial appelé tableau doit être importé en python.
- Méthode : C'est une méthode spécifique pour initialiser un tableau en python. Deux arguments ont été pris, typecode et elements.
- Code de type : Le type de données doit être spécifié avec le code de type disponible.
- Éléments : les éléments du tableau doivent être spécifiés entre crochets, par exemple [200,400,100.]
Le code de type disponible est indiqué ci-dessous
Opérations sur les tableaux
Avec la disponibilité des structures de données et des algorithmes, plusieurs opérations peuvent être effectuées dans tout type de structure de données. Une structure de données de tableau peut avoir des opérations telles que l'ajout, la suppression, l'accession et la mise à jour d'un élément.
Les opérations pouvant être effectuées dans un tableau de la structure de données python sont répertoriées ci-dessous.
1. Ajout d'un élément à un tableau
- La fonction intégrée insert() est utilisée pour ajouter des éléments à un tableau.
- Syntaxe utilisée : arrayName.insert(index, value)
- Un ou plusieurs éléments peuvent être ajoutés au tableau via la fonction insert().
- Les éléments peuvent être ajoutés au début du tableau ou à n'importe quelle position spécifique à l'aide de la fonction Input: append().
tableau d'importation
marques = array.array('i', [200,500,600])
marques.insert(1, 150)
Sortie : tableau('i', [200,150,500,600])
Un exemple avec un code est montré ci-dessous tiré de
Sortie du code :
La source
2. Suppression d'un élément dans un tableau
- Un élément peut être supprimé du tableau via sa valeur.
- Syntaxe utilisée : arrayName.remove(value)
- Exemple : supprimer la valeur de 250 après son ajout dans le tableau contenant les éléments 100, 300, 200, 500 et 800.
Contribution:
tableau d'importation
marques = array.array('i', [100,300,200,500,800])
marques.insert(1, 250)
imprimer (marques)
marques.supprimer(250)
Sortie : tableau('i', [100,300,200,500,800])
Un exemple de code tiré de
La source
Sortie du code :
3. Accéder aux éléments d'un tableau
- L'opérateur d'index [ ] est utilisé pour accéder aux éléments d'un tableau.
- Le numéro d'index est utilisé pour accéder à n'importe quel élément du tableau .
Un exemple de code est illustré ci-dessous tiré de
Sortie du code :
La source
4. Recherche d'élément dans un tableau.
- La méthode index() intégrée est utilisée pour rechercher un élément dans un tableau.
- La valeur d'index de l'élément à rechercher est renvoyée par la fonction.
- Exemple : recherche d'un élément 250 dans le tableau des éléments 100, 250, 300, 200, 500 et 800.
Entrée : tableau d'importation
marques = array.array('I', [100,250,300,200,500,800])
imprimer(marques.index(250))
Sortie : 1
Un code pour rechercher un élément dans un tableau
La sortie du code est
La source
3. Mettre à jour les éléments d'un tableau
- Le processus de mise à jour d'un élément est similaire à la méthode d'insertion à la seule différence que lors de la mise à jour, la valeur existante sera remplacée à l'index donné.
- La nouvelle valeur est réaffectée à l'index pour mettre à jour l'élément dans un tableau.
- Exemple : Mise à jour d'un élément 250 avec 350 dans le tableau des éléments 100, 250, 300, 200, 500 et 800.
Entrée : tableau d'importation
marques = array.array('i', [100,250,300,200,500,800])
points[1] = 350
Sortir:
tableau('i', [100,350,300,200,500,800])
Un code montrant la mise à jour d'un élément est affiché ci-dessous
La sortie du code est
La source
Avantages du tableau
- Le stockage de plusieurs valeurs dans une seule variable est possible au lieu de créer des variables distinctes pour chaque élément.
- Plusieurs valeurs peuvent être traitées facilement et rapidement à l'aide de tableaux.
- Les éléments du tableau peuvent être triés et recherchés plus rapidement.
Conclusion
L'article traitait d'un type particulier de structure de données, à savoir le tableau et ses opérations associées. Avec les concepts de base, des programmes plus complexes pourraient être construits ciblant des problèmes réels. Si vous souhaitez renforcer les bases de vos concepts de structure de données en python, vous pouvez vous référer au cours suivant de Executive PG Program in Data Science by upGrad. Le cours est certifié par l'IIIT-Bangalore et propose plus de 14 outils de programmation et langages pour préparer votre voyage vers l'industrie. Il est spécialement conçu pour les professionnels débutants de la tranche d'âge de 21 à 45 ans. Alors, n'arrêtez pas votre apprentissage ici et maîtrisez le langage et son application dans le monde de l'apprentissage automatique grâce au cours de upGrad. Si vous avez des questions, notre équipe d'assistance sera là pour vous aider.
Un tableau est une structure de données linéaire puissante. Cependant, il présente certains avantages ainsi que des inconvénients qui sont mentionnés ci-dessous : Ce qui suit illustre la différence entre un tableau et une liste. La structure de données de tableau a de nombreuses applications dans la vie réelle et elle est également utilisée comme base pour implémenter d'autres structures de données définies par l'utilisateur. Certaines des principales applications des baies sont les suivantes :Quels sont les avantages et les inconvénients d'un tableau ?
Avantages
1. Dans un tableau, les éléments sont facilement accessibles par leurs numéros d'index.
2. Les tableaux peuvent être utilisés pour stocker plusieurs entités similaires.
3. L'opération de recherche est très pratique. Cela peut être fait en temps O(n) et O(log n) dans un tableau trié, où n est le nombre d'éléments.
Désavantages
1. Étant donné que la mémoire est allouée statiquement dans un tableau, la taille du tableau ne peut pas être modifiée.
2. Il est homogène c'est-à-dire que seuls les éléments ayant un type de données similaire peuvent être stockés dans un tableau. Faire la différence entre un tableau et une liste ?
Déployer -
1. La structure de données du tableau est homogène, c'est-à-dire que seuls les éléments avec des types de données similaires peuvent être stockés dans un tableau.
2. Les modules doivent être importés avant d'utiliser la baie.
3. Les opérations arithmétiques sont directement applicables.
4. Préféré pour les données plus volumineuses.
4. Beaucoup plus compact et consomme moins de mémoire.
Lister -
1. La liste est hétérogène et peut stocker des éléments de plusieurs types de données à l'intérieur.
2. Pas besoin d'importer des modules car il est intégré à Python.
3. Les opérations arithmétiques ne peuvent pas être utilisées directement.
4. Préféré pour les petites données.
5. La consommation de mémoire est plus. Décrivez les principales applications des tableaux ?
1. Les tableaux sont utilisés pour implémenter et effectuer des opérations matricielles. Les matrices sont largement utilisées dans les études géologiques et les expériences scientifiques et de recherche.
2. Plusieurs structures de données définies par l'utilisateur sont mises en œuvre à l'aide des structures de données de tableau. Ceux-ci incluent la pile, la file d'attente, les tas, les tables de hachage et les listes.
3. Les programmes utilisent des tableaux pour réguler le flux de contrôle au lieu d'utiliser les instructions elif traditionnelles, qui sont relativement longues.
4. Les algorithmes écrits pour les processus de planification du processeur utilisent également la structure de données du tableau pour améliorer les performances du processeur.
5. Les graphes utilisent les listes d'adjacence comme l'une de leurs implémentations. Des vecteurs (application de tableau) sont utilisés pour créer ces listes de contiguïté.