领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

PHP 数组与数据结构 php数据结构和算法

nixiaole 2024-11-14 18:33:44 知识剖析 17 ℃

两种常见的数据结构:栈与队列

栈的基本特点: 先进后出

队列的基本特点:先进先出

使用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("武汉","成都")); //返回值:4
print_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 数组新的单元数目。

Tags:

最近发表
标签列表