队列是一种线性表,按照先进先出的原则进行
单向队列:只能从头进,从尾出
双向队列:头尾都可以进出
class DuiLie {
private $array = array();//声明空数组
public function setFirst($item){
return array_unshift($this->array,$item);//头入列
/**
array_unshift() 函数用于向数组插入新元素。新数组的值将被插入到数组的开头。
提示:您可以插入一个或多个值。
注释:数值键名将从 0 开始,以 1 递增。字符串键名将保持不变。
*/
}
public function delFirst(){
return array_shift($this->array);//头出列
/**
array_shift() 函数用于删除数组中的第一个元素,并返回被删除的元素。
注释:如果键名是数字的,所有元素都将获得新的键名,从 0 开始,并以 1 递增(参见下面实例)。
*/
}
public function setLast($item){
return array_push($this->array,$item);//尾入列
/**
array_push() 函数向数组尾部插入一个或多个元素。
提示:您可以添加一个或者多个值。
注释:即使您的数组有字符串键名,您所添加的元素将是数字键名(参见下面的实例)。
*/
}
public function delLast($item){
return array_pop($this->array,$item);//尾出列
/**
array_pop() 函数删除数组中的最后一个元素。
*/
}
public function show(){
var_dump($this->array);//打印数组
}
public function Del(){
unset($this->array);//清空数组
}
}
$DuiLie = new DuiLie();
$DuiLie->setFirst(11);
$DuiLie->setFirst(22);
$DuiLie->setLast(33);
$DuiLie->show();
/**
输出的结果:
array(3) { [0]=> int(22) [1]=> int(11) [2]=> int(33) }
*/