PHP資料結構有幾種
在PHP中資料結構共有9種,PHP有著非常強大的SPL標準庫,其中提供了一套標準的資料結構,分別是雙向鍊錶,棧,隊列,堆,最大堆,最小堆,優先列隊,陣列,映射。
雙向鍊錶:SplDoublyLinkedList
雙鍊錶是一種重要的線性儲存結構,對於雙鍊錶中的每個節點,不僅僅儲存自己的信息,還要保存前驅和後繼節點的位址
堆疊:SplStack
堆疊是一種特殊的線性表,因為它只能在線性表的一端進行插入或刪除元素(即進堆疊和出棧)
佇列:SplQueue
#SplQueue 類別透過使用雙向鍊錶來提供佇列的主要功能。
堆:SplHeap
#堆(Heap)就是為了實現優先隊列而設計的一種資料結構,它是透過建構二元堆(二元樹的一種)實現。
最大堆:SplMaxHeap
SplMaxHeap類別提供堆疊的主要功能,將最大值保持在頂部。
最小堆:SplMinHeap
#SplMinHeap類別提供堆的主要功能,將最小值保持在頂部。
優先列隊:SplPriorityQueue
SplPriorityQueue是以堆疊資料結構來實現的,當我們出隊時會拿出堆頂的元素,此時堆的特性被破壞,堆會進行相應的調整至穩定態(MaxHeap or MinHeap),即會將最後一個元素替換到堆頂,然後進行穩定態驗證,不符合堆特性則繼續調整,或者我們就得到了一個穩定態的堆,所以當優先順序相同,出隊順序並不會按照入隊順序。
陣列:SplFixedArray
SplFixedArray與普通的PHP Array不同,它是以數字為鍵名的固定長度的數組,它沒有使用散列(Hash)儲存方式,更接近C語言的數組,因此效率更高。
對應:SplObjectStorage
#SplObjectStorage類別實作了物件儲存對映表,套用於需要唯一識別多個物件的儲存場景。
推薦教學:《PHP教學》
以上是PHP資料結構有幾種的詳細內容。更多資訊請關注PHP中文網其他相關文章!