PHP使用两个栈实现队列功能的方法


Posted in PHP onJanuary 15, 2018

本文实例讲述了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);
  }
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
亲密接触PHP之PHP语法学习笔记1
Dec 17 PHP
PHP数组循环操作详细介绍 附实例代码
Feb 03 PHP
解析数组非数字键名引号的必要性
Aug 09 PHP
php函数指定默认值方法的小例子
Dec 04 PHP
php验证session无效的解决方法
Nov 04 PHP
php使用MySQL保存session会话的方法
Jun 18 PHP
基于thinkPHP框架实现留言板的方法
Oct 17 PHP
thinkPHP引入类的方法详解
Dec 08 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
PHP去除空数组且数组键名重置的讲解
Feb 28 PHP
swoole锁的机制代码实例讲解
Mar 04 PHP
php获取ajax的headers方法与内容实例
Dec 27 #PHP
PHP实现求连续子数组最大和问题2种解决方法
Dec 26 #PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
Dec 26 #PHP
thinkphp5 URL和路由的功能详解与实例
Dec 26 #PHP
php-msf源码详解
Dec 25 #PHP
关于 Laravel Redis 多个进程同时取队列问题详解
Dec 25 #PHP
源码分析 Laravel 重复执行同一个队列任务的原因
Dec 25 #PHP
You might like
一个php作的文本留言本的例子(四)
2006/10/09 PHP
PHP中10个不常见却非常有用的函数
2010/03/21 PHP
PHP header()函数常用方法总结
2014/04/11 PHP
php求数组全排列,元素所有组合的方法
2016/05/05 PHP
php字符串的替换,分割和连接方法
2016/05/23 PHP
微信公众平台开发教程⑤ 微信扫码支付模式介绍
2019/04/10 PHP
ThinkPHP5.0框架实现切换数据库的方法分析
2019/10/30 PHP
Prototype使用指南之string.js
2007/01/10 Javascript
JQuery自定义事件的应用 JQuery最佳实践
2010/08/01 Javascript
jQuery-Easyui 1.2 实现多层菜单效果的代码
2012/01/13 Javascript
jQuery 开发者应该注意的9个错误
2012/05/03 Javascript
用js实现控件的隐藏及style.visibility的使用
2013/06/14 Javascript
js实现图片旋转的三种方法
2014/04/10 Javascript
Jquery $when done then的用法详解
2016/05/20 Javascript
cdn模式下vue的基本用法详解
2018/10/07 Javascript
vue element upload实现图片本地预览
2019/08/20 Javascript
JS常见内存泄漏及解决方案解析
2020/05/30 Javascript
小程序实现列表展开收起效果
2020/07/29 Javascript
JS实现炫酷雪花飘落效果
2020/08/19 Javascript
详解Python编程中对Monkey Patch猴子补丁开发方式的运用
2016/05/27 Python
Python存取XML的常见方法实例分析
2017/03/21 Python
python 读写中文json的实例详解
2017/10/29 Python
python opencv3实现人脸识别(windows)
2018/05/25 Python
python networkx 包绘制复杂网络关系图的实现
2019/07/10 Python
Python使用Chrome插件实现爬虫过程图解
2020/06/09 Python
Selenium之模拟登录铁路12306的示例代码
2020/07/31 Python
Python实现手势识别
2020/10/21 Python
微软新西兰官方网站:Microsoft New Zealand
2018/08/17 全球购物
逻辑链路控制协议
2016/10/01 面试题
医院护士工作检讨书
2014/10/26 职场文书
全陪导游词
2015/02/04 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书
小学大队委竞选口号
2015/12/25 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书
详解非极大值抑制算法之Python实现
2021/06/28 Python
Pyqt5将多个类组合在一个界面显示的完整示例
2021/09/04 Python