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 相关文章推荐
一个用于网络的工具函数库
Oct 09 PHP
PHP多线程抓取网页实现代码
Jul 22 PHP
PHP设计模式 注册表模式(多个类的注册)
Feb 05 PHP
深入探讨:Nginx 502 Bad Gateway错误的解决方法
Jun 03 PHP
一组PHP可逆加密解密算法实例代码
Jan 21 PHP
php简单定时执行任务的实现方法
Feb 23 PHP
php中动态变量用法实例
Jun 10 PHP
双冒号 ::在PHP中的使用情况
Nov 05 PHP
PHP使用反射机制实现查找类和方法的所在位置
Apr 22 PHP
php 处理png图片白色背景色改为透明色的实例代码
Dec 10 PHP
php判断目录存在的简单方法
Sep 26 PHP
laravel5.1框架model类查询的实现方法
Oct 08 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 MsSql server时遇到的中文编码问题
2009/06/11 PHP
linux下为php添加curl扩展的方法
2011/07/29 PHP
php中apc缓存使用示例
2013/12/25 PHP
Javascript 篱式条件判断
2008/08/22 Javascript
js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
2010/03/07 Javascript
仿中关村在线首页弹出式广告插件(jQuery版)
2012/05/03 Javascript
JQuery中使用ajax传输超大数据的解决方法
2014/07/14 Javascript
JS组件Bootstrap实现弹出框效果代码
2016/04/26 Javascript
深入浅析JavaScript中的Function类型
2016/07/09 Javascript
使用plupload自定义参数实现多文件上传
2016/07/19 Javascript
JS仿淘宝搜索框用户输入事件的实现
2017/06/19 Javascript
vue小图标favicon不显示的解决方案
2017/09/19 Javascript
jQuery实现table中两列CheckBox只能选中一个的示例
2017/09/22 jQuery
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
2018/01/09 Javascript
vue树形结构获取键值的方法示例
2018/06/21 Javascript
jQuery实现的简单日历组件定义与用法示例
2018/12/24 jQuery
详解ES6 Promise的生命周期和创建
2019/08/18 Javascript
vue-cli3 取消eslint校验代码的解决办法
2020/01/16 Javascript
[55:42]VG vs VGJ.T 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
Python tkinter事件高级用法实例
2018/01/31 Python
Flask Web开发入门之文件上传(八)
2018/08/17 Python
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
2019/06/10 Python
keras自定义损失函数并且模型加载的写法介绍
2020/06/15 Python
python中导入 train_test_split提示错误的解决
2020/06/19 Python
Python直接赋值及深浅拷贝原理详解
2020/09/05 Python
如何在Canvas中添加事件的方法示例
2019/05/21 HTML / CSS
Boutique 1美国:阿联酋奢侈时尚零售商
2017/10/16 全球购物
Belvilla德国:在线预订度假屋
2018/04/10 全球购物
全球性的奢侈品梦工厂:Forzieri(福喜利)
2019/02/20 全球购物
环境工程与管理大学毕业生求职信
2013/10/02 职场文书
村委会贫困证明范本
2014/09/17 职场文书
敬老院义诊活动总结
2015/05/07 职场文书
股东协议书范本2016
2016/03/21 职场文书
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery
前端JS获取URL参数的4种方法总结
2022/04/05 Javascript
详细介绍MySQL中limit和offset的用法
2022/05/06 MySQL