SPL标准库常用的数据结构

栈数据结构

1 $stack = new SplStack();    //栈数据结构->先进后出    
2 $stack->push('data1');      //入栈
3 $stack->push('data2');      //入栈
4 echo $stack->pop();         //出栈->data2
5 echo $stack->pop();         //出栈->data1

 

队列数据结构

1 $queue = new SplQueue();    //队列数据结构->先进先出
2 $queue->enqueue('data1');    //入列
3 $queue->enqueue('data2');    //入列
4 echo $queue->dequeue();    //出列->data1
5 echo $queue->dequeue();    //出列->data2

 

 

堆数据结构

1 $heap = new SplMinHeap();    //堆数据结构
2 $heap->insert('data1');        //存放
3 $heap->insert('data2');        //存放
4 echo $heap->extract();        //取出->data1
5 echo $heap->extract();        //取出->data2

 

固定长度的数组数据结构

1 $array = new SplFixedArray(10);    //固定长度的数组数据结构,声明长度为10
2 $array[0] = 0;
3 $array[9] = 9;
4 var_dump($array);    
5 //object(SplFixedArray)#1 (10) { [0]=> int(0) [1]=> NULL [2]=> NULL [3]=> NULL [4]=> NULL [5]=> NULL [6]=> NULL [7]=> NULL [8]=> NULL [9]=> int(9) }
6 //下标1-8无论有没有使用,都会分配内存空间

 

 

posted @ 2016-09-14 00:22  D蓝叶  阅读(1133)  评论(0编辑  收藏  举报