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之第八天
Oct 09 PHP
php 获取一个月第一天与最后一天的代码
May 16 PHP
通过缓存数据库结果提高PHP性能的原理介绍
Sep 05 PHP
PHP curl 并发最佳实践代码分享
Sep 05 PHP
很让人受教的 提高php代码质量36计
Sep 05 PHP
PHP高手需要要掌握的知识点
Aug 21 PHP
PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
Mar 25 PHP
Yii2框架dropDownList下拉菜单用法实例分析
Jul 18 PHP
php getcwd与dirname(__FILE__)区别详解
Sep 24 PHP
thinkphp修改配置进入默认首页的方法
Feb 07 PHP
PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据示例
Jun 09 PHP
laravel框架中表单请求类型和CSRF防护实例分析
Nov 23 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
基于jquery的用鼠标画出可移动的div
2012/09/06 Javascript
jQuery $.extend()用法总结
2014/06/15 Javascript
原生JavaScript编写俄罗斯方块
2015/03/30 Javascript
JavaScript在网页中画圆的函数arc使用方法
2015/11/13 Javascript
Javascript模仿淘宝信用评价实例(附源码)
2015/11/26 Javascript
Javascript中Date类型和Math类型详解
2016/02/27 Javascript
js实现密码强度检测【附示例】
2016/03/30 Javascript
如何在Angular2中使用jQuery及其插件的方法
2017/02/09 Javascript
vue.js开发环境搭建教程
2017/05/04 Javascript
详解使用vue脚手架工具搭建vue-webpack项目
2017/05/10 Javascript
详解axios在vue中的简单配置与使用
2017/05/10 Javascript
原生JavaScript实现精美的淘宝轮播图效果示例【附demo源码下载】
2017/05/27 Javascript
移动端触摸滑动插件swiper使用方法详解
2017/08/11 Javascript
微信小程序生成分享海报方法(附带二维码生成)
2019/03/29 Javascript
JQuery样式操作、click事件以及索引值-选项卡应用示例
2019/05/14 jQuery
小程序根据手机机型设置自定义底部导航距离
2019/06/04 Javascript
微信小程序自定义弹出模态框禁止底部滚动功能
2020/03/09 Javascript
[56:38]DOTA2-DPC中国联赛正赛Aster vs Magma BO3 第一场 3月5日
2021/03/11 DOTA
Python中表达式x += y和x = x+y 的区别详解
2017/06/20 Python
Python实现的矩阵类实例
2017/08/22 Python
Django与JS交互的示例代码
2017/08/23 Python
利用Tkinter(python3.6)实现一个简单计算器
2017/12/21 Python
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
对python GUI实现完美进度条的示例详解
2018/12/13 Python
python飞机大战pygame碰撞检测实现方法分析
2019/12/17 Python
Python Tornado批量上传图片并显示功能
2020/03/26 Python
Python如何实现远程方法调用
2020/08/07 Python
浅谈anaconda python 版本对应关系
2020/10/07 Python
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
2014/04/16 HTML / CSS
HTML5 script元素async、defer异步加载使用介绍
2013/08/23 HTML / CSS
银行职员自我鉴定
2014/04/20 职场文书
2014年电话销售工作总结
2014/12/01 职场文书
2014年食品安全工作总结
2014/12/04 职场文书
投标邀请书范本
2015/02/02 职场文书
2015年教师自我评价范文
2015/03/04 职场文书
台风停课通知
2015/04/24 职场文书