Maison  >  Article  >  développement back-end  >  Quelle est la différence entre une liste chaînée et un tableau en php

Quelle est la différence entre une liste chaînée et un tableau en php

青灯夜游
青灯夜游original
2021-07-08 14:06:061564parcourir

Différences : 1. Les tableaux allouent de la mémoire de manière statique et les listes chaînées allouent de la mémoire de manière dynamique ; 2. Les tableaux sont continus en mémoire et les listes chaînées sont discontinues 3. Les éléments du tableau sont dans la zone de pile et les éléments de la liste chaînée sont dans le tas ; zone ; 4. Le temps nécessaire pour localiser les éléments dans les tableaux est complexe. Le degré est O(1) et la liste chaînée est O(n) ; 5. La complexité temporelle de l'insertion ou de la suppression d'éléments du tableau est O(n) ; , et la liste chaînée est O(1).

Quelle est la différence entre une liste chaînée et un tableau en php

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

Qu'est-ce qu'une liste chaînée

Une liste chaînée est un stockage non continu et non séquentiel structure sur une unité de stockage physique L’ordre logique des éléments de données est obtenu grâce à l’ordre des liens des pointeurs dans la liste chaînée.

Une liste chaînée se compose d'une série de nœuds (chaque élément de la liste chaînée est appelé un nœud), et les nœuds peuvent être générés dynamiquement au moment de l'exécution.

Chaque nœud comprend deux parties : l'une est le champ de données qui stocke les éléments de données et l'autre est le champ de pointeur qui stocke l'adresse du nœud suivant.

Qu'est-ce qu'un tableau

Un tableau est une collection de données qui organise une série de données pour former un tout exploitable. Les tableaux en PHP sont complexes mais plus flexibles que les tableaux de nombreux autres langages de haut niveau.

Array Un tableau est un ensemble ordonné de variables où chaque valeur est appelée un élément. Chaque élément se distingue par un identifiant spécial appelé clé (également appelé indice).

Chaque entité du tableau contient deux éléments, à savoir la clé et la valeur. Les éléments du tableau correspondants peuvent être obtenus par valeur de clé. Ces clés peuvent être des clés numériques ou des clés d'association. Si une variable est un conteneur qui stocke une seule valeur, alors un tableau est un conteneur qui stocke plusieurs valeurs. Comparaison des listes chaînées et des tableaux dans la zone de pile php, les éléments de la liste chaînée sont dans la zone du tas

Étant donné que le tableau est continu en mémoire, nous pouvons utiliser des indices pour localiser, la complexité temporelle est O(1) et le la complexité temporelle de la localisation des éléments dans la liste chaînée est O(n)

    Mais en raison de la continuité du tableau, la complexité temporelle de l'insertion ou de la suppression d'éléments du tableau est O(n) ; la liste chaînée est O(1).
  • Pour résumer, la différence entre les tableaux et les listes chaînées est la suivante

  • 1 Les tableaux allouent de la mémoire de manière statique et les listes chaînées allouent de la mémoire de manière dynamique
  • 2 Les tableaux sont continus en mémoire et les listes chaînées sont discontinues

    .
  • 3. Les éléments du tableau sont dans la zone de pile, les éléments de la liste chaînée sont dans la zone du tas
  • 4 Le tableau est positionné à l'aide d'indices, la complexité temporelle est O(1), la complexité temporelle de la localisation des éléments dans la liste chaînée. est O(n);

  • 5. La complexité temporelle de l'insertion ou de la suppression d'éléments du tableau est O (n), la complexité temporelle de la liste chaînée est O (1).

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn