栈的基本特点: 前辈后出
行列步队的基本特点:前辈先出
利用PHP数组仿照栈操作(入栈、出栈)
array_push() 将一个或多个单元压入数组的末端(入栈),返回值为数组元素的个数。
int array_push ( array &$array , mixed $var [, mixed $... ] )
array_push() 将 array 当成一个栈,并将传入的变量压入 array 的末端。array 的长度将根据入栈变量的数目增加。和如下效果相同:
<?php$stack = array( "orange" , "banana" );echo array_push ( $stack , "apple" , array("武汉","成都")); //返回值:4print_r ( $stack ); Array ( [0] => orange [1] => banana [2] => apple [3] => Array ( [0] => 武汉 [1] => 成都 ) )?>
实例二
<?php$array[] = $var; //此种方法的效率高?>
并对每个 var 重复以上动作。
返回数组新的单元总数。
array_pop() 将数组末了一个单元弹出(出栈)
mixed array_pop ( array &$array )
array_pop() 弹出并返回 array 数组的末了一个单元,并将数组 array 的长度减一。如果 array 为空(或者不是数组)将返回 NULL。
如果是数组则只返回"array"关键字,需遍历;
利用PHP数组仿照行列步队操作(入队、出队)
array_shift() 将数组开头的单元移出数组(出队)
mixed array_shift ( array &$array )
array_shift() 将 array 的第一个单元移出并作为结果返回,将 array 的长度减一并将所有其它单元向前移动一位。
所有的数字键名将改为从零开始计数,笔墨键名将不变。如果 array 为空(或者不是数组),则返回 NULL。
如果是数组则只返回"array"关键字,需遍历;
array_unshift() 在数组开头插入一个或多个单元(入队)
int array_unshift ( array &$array , mixed $var [, mixed $... ] )
array_unshift() 将传入的单元插入到 array 数组的开头。把稳单元是作为整体被插入的,因此传入单元将保持同样的顺序。
所有的数值键名将修正为从零开始重新计数,所有的笔墨键名保持不变。
返回 array 数组新的单元数目。