<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.spl.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'zh',
  ),
  'this' => 
  array (
    0 => 'spl.datastructures.php',
    1 => 'Datastructures',
    2 => 'Datastructures',
  ),
  'up' => 
  array (
    0 => 'book.spl.php',
    1 => 'SPL',
  ),
  'prev' => 
  array (
    0 => 'splsubject.notify.php',
    1 => 'SplSubject::notify',
  ),
  'next' => 
  array (
    0 => 'class.spldoublylinkedlist.php',
    1 => 'SplDoublyLinkedList',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'zh',
    'path' => 'reference/spl/datastructures.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/spl.datastructures.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="spl.datastructures" class="part">
 <h1 class="title">Datastructures</h1>
<h2>目录</h2><ul class="chunklist chunklist_part"><li><a href="class.spldoublylinkedlist.php">SplDoublyLinkedList</a></li><li><a href="class.splstack.php">SplStack</a></li><li><a href="class.splqueue.php">SplQueue</a></li><li><a href="class.splheap.php">SplHeap</a></li><li><a href="class.splmaxheap.php">SplMaxHeap</a></li><li><a href="class.splminheap.php">SplMinHeap</a></li><li><a href="class.splpriorityqueue.php">SplPriorityQueue</a></li><li><a href="class.splfixedarray.php">SplFixedArray</a></li><li><a href="class.arrayobject.php">ArrayObject</a></li><li><a href="class.splobjectstorage.php">SplObjectStorage</a></li></ul>


 <div class="partintro">
  <p class="para">
   SPL 提供了一套标准的数据结构。它们按底层实现进行分组, 通常定义了它们的一般应用领域。
  </p>

  <div class="section">
   <h2 class="title">双向链表</h2>

   <p class="para">
    双链表 (DLL) 是一个链接到两个方向的节点列表。当底层结构是 DLL 时, 迭代器的操作、对两端的访问、节点的添加或删除都具有 O (1) 的开销。因此, 它为栈和队列提供了一个合适的实现。
   </p>

   <ul class="itemizedlist">
    <li class="listitem">
     <span class="simpara"><span class="classname"><a href="class.spldoublylinkedlist.php" class="classname">SplDoublyLinkedList</a></span></span>
     <ul class="itemizedlist">
      <li class="listitem"><span class="simpara"><span class="classname"><a href="class.splstack.php" class="classname">SplStack</a></span></span></li>
      <li class="listitem"><span class="simpara"><span class="classname"><a href="class.splqueue.php" class="classname">SplQueue</a></span></span></li>
     </ul>
    </li>
   </ul>

  </div>
  <div class="section">
   <h2 class="title">堆</h2>

   <p class="para">
    堆是遵循堆属性的树状结构: 每个节点都大于或等于其子级, 使用对堆全局的已实现的比较方法进行比较。
   </p>

   <ul class="itemizedlist">
    <li class="listitem">
     <span class="simpara"><span class="classname"><a href="class.splheap.php" class="classname">SplHeap</a></span></span>
     <ul class="itemizedlist">
      <li class="listitem"><span class="simpara"><span class="classname"><a href="class.splmaxheap.php" class="classname">SplMaxHeap</a></span></span></li>
      <li class="listitem"><span class="simpara"><span class="classname"><a href="class.splminheap.php" class="classname">SplMinHeap</a></span></span></li>
     </ul>
    </li>
    <li class="listitem">
     <span class="simpara"><span class="classname"><a href="class.splpriorityqueue.php" class="classname">SplPriorityQueue</a></span></span>
    </li>
   </ul>

  </div>

  <div class="section">
   <h2 class="title">数组</h2>

   <p class="para">
    数组是以连续方式存储数据的结构, 可通过索引访问。
   </p>
   <blockquote class="note"><p><strong class="note">注意</strong>: 
    <span class="simpara">
     请勿将此与 PHP 的本地 <span class="type"><a href="language.types.array.php" class="type array">array</a></span> 类型混淆。
     PHP 数组实际上是有序哈希表。
     然而, SPL 提供了 <span class="classname"><a href="class.arrayobject.php" class="classname">ArrayObject</a></span> 类来将 PHP 数组包装成对象。
    </span>
   </p></blockquote>

   <ul class="itemizedlist">
    <li class="listitem">
     <span class="simpara"><span class="classname"><a href="class.splfixedarray.php" class="classname">SplFixedArray</a></span></span>
    </li>
   </ul>

  </div>

  <div class="section">
   <h2 class="title">映射</h2>

   <p class="para">
    映射是一个数据拥有键值对。PHP 数组可以被看作是从整数/字符串到值的映射。SPL 提供了从对象到数据的映射。此映射也可用作对象集。
   </p>

   <ul class="itemizedlist">
    <li class="listitem">
     <span class="simpara"><span class="classname"><a href="class.splobjectstorage.php" class="classname">SplObjectStorage</a></span></span>
    </li>
   </ul>

  </div>
 </div>

 





 







 








 




 




 




 





 




 





 





</div>
<?php manual_footer($setup); ?>