1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-24 07:22:16 +01:00
Files
archived-doc-es/reference/spl/datastructures.xml
2025-02-27 07:56:42 +01:00

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
-->