国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP數(shù)組函數(shù)實現(xiàn)棧與隊列的方法介紹(代碼示例)

2024-09-04 11:46:45
字體:
供稿:網(wǎng)友

本篇文章給大家?guī)淼膬?nèi)容是關(guān)于PHP數(shù)組函數(shù)實現(xiàn)棧與隊列的方法介紹(代碼示例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

"PHP是世界上最好的語言!"

哈哈,各位新年好,開頭這一句過后,大家想罵人,想吵架的沖動是不是像魔鬼一樣無法攔阻?過年期間,實在無聊,就把《PHP+Mysql網(wǎng)站開發(fā)入門與提高》這本不知道啥時買的書拖出來又讀一回,剛好我的那個樹莓派3B經(jīng)過簡單調(diào)整,可以連接到家里的wifi上了,便插上電,當成實驗服務器,跑跑書中例子,今天剛好在看數(shù)組這一章,發(fā)現(xiàn)php提供的四個關(guān)于數(shù)組的函數(shù):array_push(),array_pop(),array_unshift(),array_shift()配合數(shù)組本身,一下子就實現(xiàn)了棧(stack)和隊例(quene),跟C語言比起來,這幸福來的太突然了。

定義一個棧,直接就是一個$rangelist=array("戰(zhàn)狼","戰(zhàn)狼2","流浪地球"),操作他,入棧array_push($rangelist,"吳京"),出棧$result=array_pop($rangelist),出棧元素直接到$result中,比起以下用C語言實現(xiàn)的代碼,真是要笑著擼代碼了,以前天天愁著面對互聯(lián)網(wǎng)開發(fā)手中無劍,不知道如何是好,原來這么好的工具放在眼前卻不知道撿起用,實在是太愚蠢了。

  1. typedef struct stack 
  2.  
  3.  
  4.     ElemType Data[MAXSIZE]; 
  5.  
  6.     int top; 
  7.  
  8. }SqStack;    
  9.  
  10. bool Push(SqStack *s,ElemType e)//壓棧  
  11.  
  12.  
  13.     if(s->top==MAXSIZE-1) 
  14.  
  15.         { 
  16.  
  17.         printf("Stack is Full/n");       
  18.  
  19.         return FALSE; 
  20.  
  21.         } 
  22.  
  23.         s->Data[++(s->top)]=e;//先移指針再入數(shù)  
  24.  
  25.         return TRUE; 
  26.  
  27.  
  28. bool  Pop(SqStack *s,ElemType *e)//出棧  
  29.  
  30.  
  31.     if(s->top==-1) 
  32.  
  33.         { 
  34.  
  35.         printf("Stack is Empty/n");      
  36.  
  37.         return FALSE; 
  38.  
  39.         } 
  40.  
  41.         *e=s->Data[(s->top)--];//先取數(shù)再減指針  
  42.  
  43.         return TRUE; 
  44.  

定義一個隊列,還是來一個數(shù)組,$quenelist=array("戰(zhàn)狼","戰(zhàn)狼2","流浪地球"),入隊array_unshift($quenelist,"紅海行動"),出隊,$result=array_shift($quenelist),出隊的元素存入$result中,清清爽爽,輕輕松松,再看看C語言的代碼:

  1. typedef struct queue 
  2.  
  3.  
  4.     ElemType Data[MAXSIZE]; 
  5.  
  6.     int front,rear; 
  7.  
  8. }SqQueue; 
  9.   
  10. bool EnQueue(SqQueue *q,ElemType e)//入隊  
  11.  
  12.  
  13.     if((q->rear+1)%MAXSIZE==q->front)  //隊滿  
  14.  
  15.         { 
  16.  
  17.         printf("Queue is Full/n");       
  18.  
  19.         return FALSE; 
  20.  
  21.         } 
  22.  
  23.         q->Data[q->rear]=e; 
  24.  
  25.         q->rear=(q->rear+1)%MAXSIZE;//隊尾指針加1取模  
  26.  
  27.         printf("EnQueue data %d into Queue /n",e); 
  28.  
  29.         return TRUE; 
  30.  
  31.  
  32. bool  DeQueue(SqQueue *q,ElemType *e)//出隊  
  33.  
  34.  
  35.     if(q->rear==q->front) 
  36.  
  37.         { 
  38.  
  39.         printf("Queue is Empty/n");      
  40.  
  41.         return FALSE; 
  42.  
  43.         } 
  44.  
  45.         *e=q->Data[q->front];//先取數(shù)再移指針  
  46.  
  47.         q->front=(q->front+1)%MAXSIZE;  //隊頭指針加1取模   
  48.  
  49.         printf("DeQueue data is %d/n",*e); 
  50.  
  51.         return TRUE; 
  52.  

以上就是PHP數(shù)組函數(shù)實現(xiàn)棧與隊列的方法介紹(代碼示例)的詳細內(nèi)容,更多請關(guān)注php粉絲網(wǎng)其它相關(guān)文章!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 曲阜市| 岑溪市| 自贡市| 阿克苏市| 嘉定区| 普陀区| 中宁县| SHOW| 屏山县| 洞头县| 新兴县| 大英县| 隆昌县| 龙州县| 开化县| 康保县| 朔州市| 安多县| 云梦县| 绍兴市| 武威市| 津市市| 延寿县| 遂宁市| 镇远县| 永丰县| 固始县| 平泉县| 固阳县| 那曲县| 高要市| 托里县| 晋江市| 南陵县| 大厂| 马关县| 右玉县| 绥棱县| 聂拉木县| 大同市| 巴林左旗|