你好我仍然是一個學生,我有點困惑堆棧和排隊? 第一個問題是,堆棧vs排隊?
什麼他們兩者之間的主要diffrence是什麼?
btw在正常排隊旁邊有一個循環排隊那怎麼樣?他們如何工作?有什麼不同的排隊方法嗎?
即時通訊使用PHP,是否有一個簡單的(非常簡單或易於閱讀)示例代碼,我可以學習(鏈接也可以)。
有流行,推等(堆疊和排隊),有沒有什麼像在PHP?
非常感謝您的期待中。
你好我仍然是一個學生,我有點困惑堆棧和排隊? 第一個問題是,堆棧vs排隊?
什麼他們兩者之間的主要diffrence是什麼?
btw在正常排隊旁邊有一個循環排隊那怎麼樣?他們如何工作?有什麼不同的排隊方法嗎?
即時通訊使用PHP,是否有一個簡單的(非常簡單或易於閱讀)示例代碼,我可以學習(鏈接也可以)。
有流行,推等(堆疊和排隊),有沒有什麼像在PHP?
非常感謝您的期待中。
1:當用疊層插入/移除操作上的數據結構的同一端都工作(頂部)
與隊列中的插入發生在一個端部(後端)和在另一端(正面)去除。
(兩個圖像是從相應的維基百科條目)
+1的實際提正確的SPL類型。 – Gordon 2010-10-01 08:01:12
+1。偉大!。讓我們看看別人怎麼說。 – 2010-10-02 17:43:20
看樣子你是被操縱朝向差先入先出和後進先出隊列之間。堆棧是前者,而循環隊列是後者的有效實現。
A stack是LIFO(後進先出)隊列。
你可以有一個circular queue - 這些都是最常見的通信接口緩衝區,因爲他們只有有限的內存數據進來異步,並通過在不同的時間被CPU讀取數據。
如果你很熟悉你的語言,你可以用任何語言創建隊列。
php website提供了大量的文檔。
A stack添加並從同一端刪除項目。
甲queue添加項背面,並從所述前項(如在銀行的線。)
有一個article about them both,在與代碼示例詳細說明了。
A circular buffer空間有限,不斷添加項目以圓形方式覆蓋最後的項目。
http://www.php.net/manual/en/function.array-push.php
http://php.net/manual/en/function.array-pop.php
你可以看一下示例代碼中有
WEW。愚蠢的我的這個! – 2010-10-02 17:49:39
在PHP中你可以使用一個數組()來保存你的數據都棧和隊列,並使用array_ *函數來處理它們。看看array functions at php.net
你有
array_unshift的 - 把一個新的元素到數組的開頭。
對於棧你會使用array_push和array_pop
循環緩衝器我將實現作爲一個獨立的對象的隊列。
我明白,你是學生,但你應該能夠平凡搜索和找到這些問題的答案。 – 2010-10-01 07:30:13
查找LIFO和FIFO。 – 2010-10-01 07:33:20
@noon - 也許他了,但他已經在askied在計算器上30個問題,所以他必須相信給出答案的質量。 – kevchadders 2010-10-01 07:43:38