栈和队列是两种基本的数据结构。
-
栈的特点是先进后出(FILO)。
-
队列的特点是先进先出(FIFO)
实现栈效果的函数
入栈
- array_push(数组, 入栈的值)
出栈,将最尾部的元素弹出
- array_pop(数组)
栈示例
$sstu = [];
array_push($sstu, '李白');
array_push($sstu, '杜甫');
array_push($sstu, '白居易');
print_r($sstu);
array_pop($sstu);
print_r($sstu);
结果
Array([0]=>李白[1]=>杜甫[2]=>白居易[3]=>辛弃疾)
Array([0]=>李白[1]=>杜甫[2]=>白居易)
array_push()和array_pop()的作用在于维护一个连续的存储空间,为新增加的元素重写下标(索引)。
实现队列效果的函数
在数组的开头插入一个元素
- array_unshift(数组, 入队的值)
出队列,将队列的第一个元素删除
- array_shift(数组)
队列示例
$sstu = ['李白', '杜甫', '白居易', '辛弃疾'];
array_shift($sstu);
print_r($sstu);
array_unshift($sstu, 'tom');
print_r($sstu);
结果
Array([0]=>杜甫[1]=>白居易[2]=>辛弃疾)
Array([0]=>tom[1]=>杜甫[2]=>白居易)
评论区