用php实现双向队列

1.单向队列:只能从头进,从尾出
2.双向队列:头尾都可以进出

<?php
    class duilie{
        private $arr=array();

        //从头进
        public function Head_in($item){
            return array_unshift($this->arr,$item);
        }

        //从头出
        public function Head_out(){
            return array_shift($this->arr);
        }

        //从尾进
        public function Tail_in($item){
            return array_push($this->arr,$item);
        }

        //从尾出
        public function Tail_out(){
            return array_pop($this->arr);
        }

        //清空队列
        public function clear(){
            unset($this->arr);
        }

        //显示队列
        public function show(){
            return implode(' ',$this->arr);
        }

        //获得队列队尾的值
        public function get_last(){
            return array_pop($this->arr);
        }

        //获得队列队首的值
        public function get_first(){
            return array_shift($this->arr);
        }
    }
    $obj=new duilie();
    $obj->Tail_in('a');
    $obj->Head_in('b');
    $obj->Head_in('c');
    $obj->Tail_out();
    $arr=$obj->show();
    echo $arr;
?>

猜你喜欢

转载自blog.csdn.net/living_ren/article/details/79464319