什么是栈
栈
(stack)是一种动态集合
,实现的是一种后进先出
(last-in, first-out, LIFO)的策略。
栈的PUSH和POP
栈上的INSERT
操作被称为压入
(PUSH),而无元素参数的DELETE
操作称为弹出
(POP)。
举个栗子
我们生活中常见到的发传单,假设我去发传单,我把传单拿在手上。
我发出去的时候是从上往下发,发的差不多了,监工看到我手里的传单不多, 把另外一叠传单放到到我剩下的传单上面(后进),于是我继续从上往下发(先出)。 在最上面的就是先发出去的。$value) { if ($key > $max_key) { $max_key = $key; } } return $max_key;}$testArr = array(1, 23, '24324' => 2324, '424' => 234234);var_dump('测试数据', $testArr);// 压入一个$result = stack_push($testArr, 8);var_dump('压入一个', $result);// 再压入一个$result = stack_push($result, 'test');var_dump('再压入一个', $result);// 弹出一个$result = stack_pop($result);var_dump('弹出一个: ', $result);//再弹出一个$result = stack_pop($result);var_dump('再弹出一个: ', $result);//再弹出一个$result = stack_pop($result);var_dump('再弹出一个: ', $result);
打印的结果为: