面试题9:用两个栈实现队列
<?php header("content-type:text/html;charset=utf-8"); /* * 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 P68 */ $push_stack = new SplStack(); $pop_stack = new SplStack(); function mypush($node) { global $push_stack; $push_stack->push($node); } function mypop() { global $push_stack; global $pop_stack; if($pop_stack->isEmpty() && $push_stack->isEmpty()){ return false; } else if($pop_stack->isEmpty()){ while (!$push_stack->isEmpty()){ $node = $push_stack->pop(); $pop_stack->push($node); } } return $pop_stack->pop(); }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步