php 用棧實現佇列
阿新 • • 發佈:2018-12-04
<?php $arr1 = array(); $arr2 = array(); # 思路:兩個棧。出棧的時候,如果棧2不為空,就出棧2。如果棧2為空,就把棧1的出棧再入棧2。 // 入佇列操作 function pushQueue($node) { global $arr1; array_push($arr1,$node); } // 出佇列操作 function popQueue() { global $arr1; global $arr2; if (empty($arr2)) { if (empty($arr1)) { return null; } while(!empty($arr1)){ array_push($arr2, array_pop($arr1)); } } return array_pop($arr2); } #$argv for ($i=1; $i <count($argv); $i++) { pushQueue($argv[$i]); } var_dump($arr1); $pop_one = popQueue($arr1,$arr2); $pop_two = popQueue($arr1,$arr2); var_dump($pop_one); var_dump($pop_two);