《劍指 Offer》棧實現佇列

ajiang02發表於2020-04-08

題目:
用兩個棧來實現一個佇列,完成佇列的Push和Pop操作。 佇列中的元素為int型別。

public function queue()
{
    $stack = [];

    // 獲取 10 個隨機數,壓入棧
    for ($i=0; $i < 10; $i++) {
        $random  = rand(0,100);      // 隨機數
        $stack[] = $random;          // 等同於 array_push($stack, $random);
    }

    print_r($stack);                 // 輸出陣列

    while (!empty($stack)) {
        $pop = array_shift($stack);  // 先入先出,pop 出佇列首
        echo "<br/>" . $pop;
    }
}
函式 說明
rand(min, max) 返回隨機整數
range(start, end, step) 建立一個包含指定範圍的元素的陣列
array_unshift(array, element) 在array開頭插入元素element
array_push(array, element) 向array尾部插入元素(入棧),然後返回新陣列的長度
array_shift(array) 刪除array中的第一個元素,並返回被刪除元素的值
array_pop(array) 刪除array中的最後一個元素
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章