在php中陣列常被當作堆疊(後進先出:lifo)與佇列(先進先出:fifo)結構來使用。php提供了一組函式可以用於push與pop(堆疊)還有shift與unshift(佇列)來運算元組元素。堆疊與列隊在實踐中應用非常廣泛。
我們可以先看下堆疊:
複製** **如下:
<?php
$arr = array();
array_push($arr,'aaa');
array_push($arr,'bbb');
$arr.pop();
print_r($arr);
?>
如果你打算把陣列作為佇列來使用(fifo),你可以使用array_unshift()來增加元素,使用array_shift()刪除:
複製** **如下:
<?php
$arr = array();
array_unshift($arr,'aaa');
array_unshift($arr,'bbb');
print_r($arr);
array_shift($arr);
print_r($arr);
?>
關於堆疊的簡單分析
關於堆疊的簡單分析 片 public static void main string args private static void swap integer num1,integer num2 執行結果 before swap a 1,b 2 after swap a 1,b 2 大家會發現其中...
關於對堆疊的理解
棧區 stack 是由系統或者編譯器進行分配和釋放,存放區域性變數的值 函式的引數值等,操作方式類似於資料結構中的棧。堆區 heap 一般是由程式設計師自己進行分配記憶體空間和釋放的,假設程式設計師沒有對其進行釋放,在程式結束時,有時候作業系統會對其進行系統 操作方式類似於鍊錶。全域性區 靜態區st...
關於C 中的堆 棧
乙個c 程式設計占用的記憶體分為以下幾個部分 1 棧區 stack 由編譯器自動分配 釋放,存放函式的引數值,區域性變數值。操作方式類似資料結構中的stack。2 堆區 heap 一般由程式設計師分配 釋放。如果程式設計師未釋放,一般由os在程式結束時 同資料結構中的堆不同,分配方式類似鍊錶。3 靜...