Files
doc-fr/reference/spl/datastructures.xml
2021-06-08 16:49:14 +01:00

136 lines
3.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: a706ea6af5e3015603a3ecc0264b846af0ca7a7a Maintainer: jpauli Status: ready -->
<!-- Reviewed: yes -->
<part xml:id="spl.datastructures" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&spl.datastructures.intro.title;
<partintro>
<para>
SPL fournit un jeu de structures de données standard. Elles sont regroupées
ici par implémentation, ce qui définit généralement leur champ d'application.
</para>
<section>
<title>Liste doublement chaînées</title>
<para>
Une liste doublement chaînée (<literal>Doubly Linked List</literal> ou DLL)
est une liste de nœud liés dans les deux sens aux autres nœuds. Les opérations
d'itérateurs peuvent se faire dans les deux sens, en addition ou en suppression,
avec un coût de O(1) lorsque la structure sous-jacente est une DLL.
Elle fournit également un support pratique pour les piles et les queues.
</para>
<itemizedlist>
<listitem>
<simpara><classname>SplDoublyLinkedList</classname></simpara>
<itemizedlist>
<listitem><simpara><classname>SplStack</classname></simpara></listitem>
<listitem><simpara><classname>SplQueue</classname></simpara></listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</section>
<section>
<title>Tas</title>
<para>
Les tas sont des structures de type arbre, qui suivent une propriété
caractéristique : chaque nœud est plus grand ou égal que ses enfants,
lorsqu'on les compare avec la méthode implémentée de comparaison, qui est
globale au tas.
</para>
<itemizedlist>
<listitem>
<simpara><classname>SplHeap</classname></simpara>
<itemizedlist>
<listitem><simpara><classname>SplMaxHeap</classname></simpara></listitem>
<listitem><simpara><classname>SplMinHeap</classname></simpara></listitem>
</itemizedlist>
</listitem>
<listitem>
<simpara><classname>SplPriorityQueue</classname></simpara>
</listitem>
</itemizedlist>
</section>
<section>
<title>Tableaux</title>
<para>
Les <literal>Array</literal> sont des structures qui stockent
les données d'une manière contiguë, et accessible via des index.
Ne les confondez pas avec les &array; de PHP : ces tableaux sont
implémentés comme des tables de hachage ordonnées.
</para>
<itemizedlist>
<listitem>
<simpara><classname>SplFixedArray</classname></simpara>
</listitem>
</itemizedlist>
</section>
<section>
<title>Carte (<literal>Map</literal>)</title>
<para>
Une carte est une structure de données qui stocke des paire clé/valeur.
Les tableaux PHP peuvent très bien servir de cartes entre des chaînes ou
entiers et des valeurs. SPL fournit un objet de type carte pour les données.
Cette carte peut aussi servir d'ensemble d'objets.
</para>
<itemizedlist>
<listitem>
<simpara><classname>SplObjectStorage</classname></simpara>
</listitem>
</itemizedlist>
</section>
</partintro>
&reference.spl.spldoublylinkedlist;
&reference.spl.splstack;
&reference.spl.splqueue;
&reference.spl.splheap;
&reference.spl.splmaxheap;
&reference.spl.splminheap;
&reference.spl.splpriorityqueue;
&reference.spl.splfixedarray;
&reference.spl.splobjectstorage;
</part>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->