用php实现一个双向队列

作者: 蘑菇   日期: 2010-07-23 00:54:59   阅读: http://www.eduicc.com/index.php?load=read&id=38
代码实现:
下载: deque.php
  1. <?php
  2.     class deque
  3.     {
  4.         public $queue  = array();
  5.         public $length = 0;
  6.        
  7.         public function frontAdd($node){
  8.             array_unshift($this->queue,$node);
  9.             $this->countqueue();
  10.         }
  11.        
  12.         public function frontRemove(){
  13.             $node = array_shift($this->queue);
  14.             $this->countqueue();
  15.             return $node;
  16.         }
  17.        
  18.         public function rearAdd($node){
  19.             array_push($this->queue,$node);
  20.             $this->countqueue();
  21.         }
  22.        
  23.         public function rearRemove(){
  24.             $node = array_pop($this->queue);
  25.             $this->countqueue();
  26.             return $node;
  27.         }
  28.        
  29.         public function countqueue(){
  30.             $this->length = count($this->queue);   
  31.         }
  32.     }
  33. ?>


这道题从难度上讲其实不是很难,它主要考察了phper以下几个方面的技能:
1. 当然是双向队列的定义,这个就不多做解释了。
2. 考察对函数是否熟悉。
3. 考察OOP编程。
4. 考察程序员的代码规范和编程习惯。