Tableau dans la structure de données (Operations)

⚡ Résumé intelligent

Dans les structures de données, un tableau stocke plusieurs éléments du même type de données à des emplacements mémoire contigus, chacun étant accessible par un index. Ce tutoriel explique le concept, l'importance des tableaux et comment les créer et les manipuler. Python, C++ et Java avec des exemples.

  • 📦 Définition principale : Un tableau contient plusieurs éléments de même type dans une mémoire adjacente, accessibles par index.
  • | Accès rapide : Tout élément est récupéré en temps constant grâce à son index.
  • ️ Cinq Operation : Insérer, supprimer, rechercher, mettre à jour et parcourir à partir de la boîte à outils de tableaux.
  • 🌐 Interlinguistique : Python utilise le module de tableau ; C++ et Java Déclarer les tableaux nativement avec une logique manuelle.
  • 🤖 Pertinence de l'IA : Les tableaux sous-tendent les tenseurs et les matrices qui alimentent les calculs d'apprentissage automatique.

Tableau dans la structure de données (Operations)

Qu’est-ce qu’un tableau dans la structure de données ?

An tableau Un tableau est une structure de données permettant de stocker plusieurs éléments de données de même type. Les éléments d'un tableau sont alloués à des emplacements mémoire adjacents, appelés les éléments du tableau. éléments du tableau. Le nombre total d'éléments d'un tableau est son longueur.

Chaque élément est accessible par sa position, et cette référence est appelée la indice or indice.

Concept de tableau

Diagramme conceptuel des tableaux

Diagramme conceptuel des tableaux

Le diagramme ci-dessus illustre cela :

  1. Un tableau est un conteneur d'éléments.
  2. Les éléments ont une valeur et un type de données spécifiques, tels que « ABC », VRAI ou FAUX.
  3. Chaque élément possède son propre index, qui permet d'y accéder.

Remarque:

  • Les éléments sont stockés dans des emplacements de mémoire contigus.
  • Un index est toujours inférieur au nombre total d'éléments du tableau.
  • Toute variable déclarée comme un tableau peut stocker plusieurs valeurs.
  • Presque tous les langages partagent le même concept de tableaux, mais diffèrent dans la manière dont ils les déclarent et les initialisent.
  • Trois éléments restent communs à toutes les initialisations : le nom du tableau, les éléments et le type de données des éléments.

Le diagramme suivant illustre la syntaxe de déclaration d'un tableau dans Python et C++, démontrant ainsi que le concept reste le même même si la syntaxe varie légèrement d'une langue à l'autre.

Comprendre la syntaxe des tableaux

Comprendre la syntaxe des tableaux

  • Nom du tableau : nécessaire pour faciliter la consultation de la collection d'éléments.
  • Type de données: nécessaire pour la vérification des types et l'intégrité des données.
  • Éléments: les valeurs de données présentes dans le tableau.

Pourquoi avons-nous besoin de tableaux ?

  • Les tableaux sont idéaux pour stocker plusieurs valeurs dans une seule variable.
  • Ils traitent de nombreuses valeurs facilement et rapidement.
  • Le tri et la recherche de valeurs sont plus faciles avec les tableaux.

Création d'un tableau dans Python

In PythonLes tableaux diffèrent des listes : une liste peut contenir des éléments de types de données différents, tandis qu’un tableau ne peut contenir que des éléments du même type de données. Python possède un module distinct pour la gestion des tableaux, appelé array, que vous devez importer avant de l'utiliser.

À noter: Le tableau doit contenir des nombres réels tels que des entiers et des nombres à virgule flottante ; les chaînes de caractères ne sont pas autorisées.

Le code suivant crée un tableau d'entiers dans Python pour stocker les soldes des comptes :

import array
balance = array.array('i', [300, 200, 100])
print(balance)

Façons de déclarer un tableau dans Python

Vous pouvez déclarer un tableau dans Python tout en l'initialisant à l'aide de la syntaxe suivante :

arrayName = array.array(typecode, [array_items])

Syntaxe du tableau dans Python

Syntaxe du tableau dans Python

  1. Identifiant Spécifiez un nom comme vous le faites habituellement pour les variables.
  2. Modules: Python possède un module spécial appelé « array » que vous devez importer en premier.
  3. Préparation: Le module array possède une méthode pour initialiser le tableau, prenant deux arguments : typecode et elements.
  4. Saisissez le code : Spécifiez le type de données en utilisant les codes de type disponibles (voir le tableau ci-dessous).
  5. Éléments: spécifiez les éléments du tableau entre crochets, par exemple [130, 450, 103].

Le tableau ci-dessous répertorie les codes de type disponibles pour les types de données pris en charge.

Code de type C type Python Type Taille minimale (octets)
«b» char signé int 1
«B» caractère non signé int 1
'u' Py_UNICODE Caractère Unicode 2
'h' court signé int 2
«H» court non signé int 2
'je' signé int int 2
'JE' entier non signé int 2
«l» signé long int 4
«L» non signé long int 4
'F' flotter flotter 4
'ré' double flotter 8

Comment accéder à une valeur spécifique d'un tableau ?

Vous pouvez accéder à n'importe quel élément du tableau en utilisant son index.

syntaxe:

arrayName[indexNum]

Exemple :

balance[1]

Accéder à un élément du tableau

Accéder à un élément du tableau

Ici, nous avons accédé à la deuxième valeur du tableau en utilisant l'index 1. Le résultat est 200, qui est la deuxième valeur du tableau balance.

import array
balance = array.array('i', [300, 200, 100])
print(balance[1])

Sortie :

200

tableau Operadans Python

Le Python Le module array fournit des fonctions distinctes pour les opérations sur les tableaux. Ces méthodes sont destructives, c'est-à-dire que la modification est enregistrée dans la variable du tableau.

insérer

Cette opération insère un ou plusieurs éléments dans un tableau, au début, à la fin ou à un index donné. Elle attend deux arguments : l’index et la valeur.

arrayName.insert(index, value)

Exemple : Pour insérer une nouvelle valeur juste après l'index 1 (la valeur 200), référencez l'index 2 dans la méthode d'insertion.

import array
balance = array.array('i', [300, 200, 100])
balance.insert(2, 150)
print(balance)

Sortie :

array('i', [300, 200, 150, 100])

Supprimer

Cette opération supprime un élément d'un tableau par sa valeur, en acceptant un seul argument. Après son exécution, les éléments sont réorganisés et leurs indices réattribués.

arrayName.remove(value)

Exemple :

import array
balance = array.array('i', [300, 200, 150, 100])
balance.remove(150)
print(balance)

Sortie :

array('i', [300, 200, 100])

Rechercher

Cette opération recherche un élément par sa valeur et renvoie son index. Il s'agit d'une méthode non destructive, qui ne modifie donc pas les valeurs du tableau.

arrayName.index(value)

Exemple :

import array
balance = array.array('i', [300, 200, 150, 100])
print(balance.index(150))

Sortie :

2

Mises à jour

La mise à jour remplace la valeur existante à un index donné à l'aide d'un opérateur d'affectation simple.Python Les tableaux n'ont pas de update() méthode.)

arrayName[index] = value

Exemple : Pour remplacer 150 (à l'indice 2) par 145 :

import array
balance = array.array('i', [300, 200, 150, 100])
balance[2] = 145
print(balance)

Sortie :

array('i', [300, 200, 145, 100])

Traverse

Vous pouvez traverser un Python tableau utilisant une boucle :

import array
balance = array.array('i', [300, 200, 100])
for x in balance:
    print(x)

Sortie :

300
200
100

Création d'un tableau dans C++

C++ est plus flexible que Python lors de la création de tableaux. Vous pouvez créer C++ tableaux de trois manières. Le code suivant crée un tableau d'entiers dans C++ pour stocker les soldes des comptes :

#include <iostream>
using namespace std;

int main()
{
  int balance[3] = { 300, 200, 100 };
  for (int i = 0; i < 3; i++)
    {
      cout << "value of i: " << balance[i] << endl;
    }
  return 0;
}

Façons de déclarer un tableau dans C++

Vous pouvez déclarer un tableau de trois manières différentes, selon les besoins de votre programme.

Déclaration par taille :

dataType arrayName[arraySize];   // e.g. int balance[3];

Déclaration contenant uniquement des éléments de tableau :

dataType arrayName[] = {array_items};   // e.g. int balance[] = { 300, 200, 100 };

Déclaration par taille et articles :

dataType arrayName[arraySize] = {array_items};   // e.g. int balance[3] = { 300, 200, 100 };

Comment accéder à une valeur spécifique d'un tableau dans C++?

Accéder à un élément du tableau

Accéder à un élément du tableau

#include <iostream>
using namespace std;

int main()
{
  int balance[3] = { 300, 200, 100 };
  cout << balance[1];
  return 0;
}

Sortie :

200

tableau Operadans C++

Contrairement à Pythonen C++ Vous devez programmer vous-même la logique des opérations d'insertion, de suppression, de recherche, de mise à jour et de parcours.

insérer

La logique d'insertion est la suivante : parcourir les éléments du tableau, les décaler vers un index supérieur, puis ajouter un nouvel élément à l'index spécifié. L'exemple ci-dessous comporte cinq éléments et insère la valeur 150 juste après la valeur 200.

#include <iostream>
#include <stdio.h>

main() {
   int pos = 2;
   int size = 4;
   int balance[] = {300, 200, 100, 50, 0};

   printf("BEFORE INSERT:\n");
   for(int i = 0; i < 5; i++) {
      printf("%d\n", balance[i]);
   }

   /* SHIFT ITEMS TO A GREATER INDEX */
   for(int i = size; i >= pos; i--) {
       balance[i+1] = balance[i];
   }

   /* INSERT VALUE AT THE DESIRED INDEX */
   balance[pos] = 150;

   printf("AFTER INSERT:\n");
   for(int i = 0; i < 6; i++) {
      printf("%d\n", balance[i]);
   }
}

tableau Operadans Java

Créons un programme dans Java qui accepte la taille et les valeurs des éléments du tableau fournies par l'utilisateur.

import java.util.Scanner;

public class AddElements {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        System.out.println("Enter the size of the array");
        int n = sc.nextInt();

        int arr[] = new int[n];

        System.out.println("Enter Elements in the array");
        for(int i = 0; i < n; i++) {
            arr[i] = sc.nextInt();
        }
        System.out.println("Elements in the array");
        for(int j = 0; j < n; j++) {
            System.out.print(arr[j] + " ");
        }
    }
}

Modifier un élément dans un Java tableau

Mettre à jour un élément par son index.

import java.util.Scanner;

public class ModifyElement {
    public static void main(String[] args) {
        int arr[] = {1, 2, 3, 4, 5};
        int length = arr.length;
        Scanner sc = new Scanner(System.in);

        System.out.println("Array Elements Before modify");
        for(int i = 0; i < length; i++) {
            System.out.print(arr[i] + " ");
        }

        System.out.println("\nEnter the position to change");
        int pos = sc.nextInt();
        System.out.println("Enter the value");
        int val = sc.nextInt();

        arr[pos] = val;

        System.out.println("Array Elements After modify");
        for(int j = 0; j < length; j++) {
            System.out.print(arr[j] + " ");
        }
    }
}

Les éléments d'accès dans un Java tableau

Afficher tous les éléments du tableau en le parcourant.

public class AccessElements {
    public static void main(String[] args) {
        int arr[] = {1, 2, 3, 4, 5};
        int length = arr.length;

        System.out.println("Array Elements are:-");
        for(int i = 0; i < length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}

FAQ

Un tableau est une collection d'éléments de même type stockés à des emplacements mémoire contigus. Chaque élément est accessible par un index, ce qui rend les tableaux efficaces pour stocker et récupérer plusieurs valeurs liées.

A Python Une liste peut contenir des éléments de types de données différents, tandis qu'un tableau (du module array) contient des éléments d'un seul type de données. Les tableaux sont plus efficaces en termes d'utilisation de la mémoire pour les grands ensembles de données numériques.

Les cinq opérations de base sont l'insertion (ajouter un élément), la suppression (supprimer un élément), la recherche (trouver un élément par sa valeur), la mise à jour (modifier une valeur à un index) et le parcours (visiter chaque élément).

L'accès à un élément par son index est en O(1) (temps constant) car l'adresse mémoire est calculée directement à partir de l'adresse de base et de l'index. L'insertion et la suppression peuvent être en O(n) en raison des décalages.

Le stockage contigu permet au programme de calculer instantanément l'adresse de n'importe quel élément à partir de son adresse de base, plus son index multiplié par la taille de l'élément. C'est ce qui confère aux tableaux leur accès aléatoire rapide et en temps constant.

Python nécessite le module de matrice et offre des méthodes de fonctionnement intégrées. C++ et Java Déclare les tableaux nativement, mais vous oblige à coder vous-même la logique d'insertion, de suppression et de recherche. Java Les tableaux possèdent également une propriété de longueur.

Les tableaux constituent la base des vecteurs, matrices et tenseurs utilisés en IA. Des bibliothèques comme NumPy et TensorFlow stockent les données d'entraînement et les poids du modèle sous forme de tableaux multidimensionnels pour un calcul numérique rapide.

Oui. Les assistants de programmation IA détectent les erreurs d'index décalées d'une unité et hors limites, suggèrent des corrections et expliquent pourquoi un index a dépassé la longueur du tableau.ping Les débutants résolvent rapidement les problèmes courants liés aux tableaux.

Résumez cet article avec :