Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Complexité Temporelle des Opérations de Base sur les Tableaux | Liste et Tableau
Aperçu des Algorithmes et des Structures de Données
course content

Contenu du cours

Aperçu des Algorithmes et des Structures de Données

Aperçu des Algorithmes et des Structures de Données

1. Introduction à ADS
2. Liste et Tableau
3. Structures de Données Avancées
4. Graphes

book
Complexité Temporelle des Opérations de Base sur les Tableaux

Le tableau suivant montre la complexité temporelle des opérations de base pour les tableaux.

Opération de recherche

Comme nous l'avons discuté précédemment et comme cela peut être vu ci-dessus, l'avantage principal du tableau est que nous pouvons accéder à un élément arbitraire en temps constant si nous connaissons l'index de cet élément dans un tableau. Mais si nous ne savons pas quel élément nous recherchons, l'opération de recherche prend une complexité temporelle de O(N) car nous devons effectuer une recherche linéaire pour un élément.

Opération de suppression

Si nous voulons supprimer un élément par index, nous pouvons le faire en temps constant.
Cependant, parce que les tableaux sont représentés par des blocs de mémoire continus, supprimer un élément arbitraire (sauf pour le dernier élément) signifie que nous devons gérer des "trous" dans une structure de données. L'image suivante l'illustre.

Pour se débarrasser des trous, nous devons déplacer tous les éléments du "trou" jusqu'à la fin du tableau, une position plus près du début du tableau. Et dans le pire des cas, si nous supprimons le premier élément, nous devons déplacer tous les autres éléments, et la complexité temporelle de cette opération sera O(N). Dans le meilleur des cas, nous aurons une complexité temporelle de O(1) lors de la suppression du dernier élément.

Opération d'insertion

Comme pour la suppression d'éléments, lors de l'insertion d'un élément dans un tableau, nous pouvons avoir besoin de déplacer les éléments existants pour faire de la place pour le nouvel élément. Dans le pire des cas, lors de l'insertion au début du tableau, nous devrions déplacer l'ensemble du tableau, ce qui entraîne une complexité temporelle de O(n). Cependant, lors de l'insertion à la fin du tableau, nous pouvons simplement placer le nouvel élément sans aucun déplacement, ce qui entraîne une complexité temporelle de O(1).

Quelle est la complexité temporelle pour insérer un élément au début et à la fin d'un tableau ?

Quelle est la complexité temporelle pour insérer un élément au début et à la fin d'un tableau ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 2
We're sorry to hear that something went wrong. What happened?
some-alt