Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP使用两个栈实现队列功能

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

小云云
小云云asal
2018-01-16 13:37:132016semak imbas

本文主要介绍了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);
  }
}

相关推荐:

PHP基于数组实现的堆栈和队列功能实例分享

JS异步函数队列功能实例分析

Python实现堆栈与队列功能(基于list的append与pop方法)的示例

Atas ialah kandungan terperinci PHP使用两个栈实现队列功能. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn