php數組怎么進行堆棧的模擬

這篇文章給大家分享的是有關php數組怎么進行堆棧的模擬的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名注冊網站空間、營銷軟件、網站建設、沙坪壩網站維護、網站推廣。

PHP開發(fā)環(huán)境搭建工具有哪些

一、phpStudy,是一個新手入門最常用的開發(fā)環(huán)境。二、WampServer,WampServer也同樣的也是和phpStudy一樣操作簡單對小白比較友好。三、XAMPP,XAMPP(Apache+MySQL+PHP+PERL)是一個功能強大的建站集成軟件包;四、MAMP,MAMP分為兩種MAMP和MAMP Pro for Mac。五、寶塔面板,寶塔面板是一款服務器管理軟件,支持windows和linux系統(tǒng)。六、UPUPW,UPUPW是目前Windows平臺下最具特色的Web服務器PHP套件。

1、使用數組實現堆棧

(1)堆棧容器中,最后進棧的將會被最先出棧,即所謂的“先進后出”的數據結構。

(2)在PHP中,將數組當做一個棧,可使用array_push()函數或者以“$array[]=$value”完成進棧操作,使用array_pop()函數完成出棧操作。

(3)堆棧的進棧操作相當于:將數據挨個放入一個桶狀的(假設數據和此桶具有恰當的表面面積,即剛好能橫放進去)容器中,造成的結果就是,完成所有數據進棧之后,先進棧的在最下面。

2、實例

<!DOCTYPE unspecified PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>php--數組來模擬堆棧</title></head>
<body>
<?php
 class MyStack{
 private $top=-1; //模擬棧底,指向-1
 private $maxSize=5; //模擬棧的容量為5
 private $stack=array();//用來數組來模擬,想數組內填入棧的內容
  
  //入棧操作
     public function push($val){
 ///先判斷棧是否已滿
 if($this->top==$this->maxSize-1){
 echo '棧滿,不能添加</br>';
     return; //棧滿 返回
 }
 //先top上移,然后填充棧內容
 $this->top++;
     $this->stack[$this->top]=$val;
 }
 //出棧
 public function pop(){
 if($this->top==-1){
 echo '???lt;/br>';
     return; //空棧,無數據,返回
 }
 //取出棧頂的數據,同時把該數據返回,別忘了把top指針下移
 $topValue=$this->stack[$this->top];
 $this->top--;
 return $topValue;
 
 }
 //顯示棧的所有信息
 public function showStack(){
 
 if($this->top==-1){
 echo '???!</br>';
 return;//空棧,無數據,返回
 }
 //結合堆棧的數據結構,是后進先出類型的,因此從棧頂開始,依次往下讀出棧的內容
 for($i=$this->top;$i>-1;$i--){
echo 'Stack['.$i.']='.$this->stack[$i].'</br>';
 }
 }
 }
 
$stack=new MyStack();
$stack->push('111');
$stack->push('222');
$stack->showStack();
 
 
?>
</body>
</html>

感謝各位的閱讀!關于“php數組怎么進行堆棧的模擬”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

標題名稱:php數組怎么進行堆棧的模擬
文章分享:http://bm7419.com/article24/ipooce.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、做網站、響應式網站營銷型網站建設、網站排名App設計

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)