mirror of
https://github.com/php/doc-es.git
synced 2026-03-24 07:22:16 +01:00
136 lines
3.9 KiB
XML
136 lines
3.9 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: e93feee2870bb551cd11d625271b7f82da3ccb05 Maintainer: Marqitos Status: ready -->
|
|
<!-- Reviewed: no Maintainer: seros -->
|
|
<part xml:id="spl.datastructures" xmlns="http://docbook.org/ns/docbook">
|
|
<title>Estructuras de datos</title>
|
|
|
|
<partintro>
|
|
<para>
|
|
SPL proporciona un conjunto de estructuras de datos estándar. Estas están agrupadas por su
|
|
implementación subyacente la cual usualmente define su campo de aplicación
|
|
general.
|
|
</para>
|
|
|
|
<section>
|
|
<title>Listas doblemente enlazadas</title>
|
|
|
|
<para>
|
|
Una Lista Doblemente Enlazada (DLL en inglés) es una lista de nodos enlazados entre ellos
|
|
en ambas direcciones. Las operaciones de iteración, acceso a ambos extremos, adición o
|
|
remoción de nodos tienen un costo de O(1) cuando la estructura subyacente es una DLL.
|
|
Por lo tanto, proporciona una implementación decente para pilas y colas.
|
|
</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>Montículos</title>
|
|
|
|
<para>
|
|
Los montículos son estructuras de árboles que siguen la propiedad de los montículos: cada nodo
|
|
es mayor o igual que sus hijos, cuando son comparados utilizando el
|
|
método de comparación implementado, el cual es global al montículo.
|
|
</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>Arrays</title>
|
|
|
|
<para>
|
|
Los array son estructuras que almacenan datos de una forma continua y accesible
|
|
mediante índices.
|
|
</para>
|
|
<note>
|
|
<simpara>
|
|
No deben confundirse con los <type>array</type>s nativos de PHP.
|
|
Los array de PHP son en realidad tablas hash ordenadas.
|
|
Mientras que, SPL proporciona la clase <classname>ArrayObject</classname>
|
|
que envuelven los arrays de PHP en un objeto.
|
|
</simpara>
|
|
</note>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<simpara><classname>SplFixedArray</classname></simpara>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
</section>
|
|
|
|
<section>
|
|
<title>Mapa</title>
|
|
|
|
<para>
|
|
Un mapa es una estructura de datos que contiene parejas de clave-valor. Los array de PHP pueden ser vistos como correspondencias (mapas) de enteros/string a valores. SPL proporciona una correspondencia de objetos a datos. Este mapa puede ser utilizado además como un conjunto de objetos.
|
|
</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.arrayobject;
|
|
|
|
&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
|
|
-->
|