本文主要介绍了PHP使用两个栈实现队列功能的方法,结合实例形式分析了php基于两个栈实现队列功能的思路与具体操作技巧,需要的朋友可以参考下,希望能帮助到大家。
问题
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解决思路
两个栈。出栈的时候,如果栈2不为空,就出栈2。如果栈2为空,就把栈1的出栈再入栈2。
实现代码<?php
$arr1 = array();
$arr2 = array();
function mypush($node)
{
array_push($arr1,$node);
}
function mypop()
{
if(!empty($arr2)){
return array_pop($arr2);
}else{
while(!empty($arr1)){
array_push($arr2, array_pop($arr1));
}
return array_pop($arr2);
}
}
相关推荐: