php 数据结构之链表队列

时间:2022-10-04 07:37:31

php 链表队列

实例代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
class Queue{
  
  private $last;
  private $first;
  private $oldfirst;
  private static $n=0;
   
  public function __construct(){
    $this->last   = null;
    $this->first  = null;
    $this->oldfirst = null;
  }
   
  public function push($item){
    $this->oldfirst = $this->last;
    $this->last = new Node();
    $this->last->item = $item;
    $this->last->next = null;
    if(empty($this->first)){
      $this->first = $this->last;
    }else{
      $this->oldfirst->next = $this->last;
    }
    self::$n++;
  }
   
  public function pop(){
    if(self::$n<0){
      return null;
    }
    $item = $this->first->item;
    $this->first = $this->first->next;
    self::$n--;
    return $item;
  }
   
}
 
class Node{
  public $item;
  public $next;
}
 
$Queue = new Queue();
$Queue->push("a");
$Queue->push("b");
$Queue->push("c");
echo $Queue->pop().PHP_EOL;
echo $Queue->pop().PHP_EOL;
echo $Queue->pop().PHP_EOL;
echo $Queue->pop().PHP_EOL;

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://blog.csdn.net/xingjigongsi/article/details/78025291