Heim >Backend-Entwicklung >PHP-Tutorial >Einführung in die Methode zur Implementierung von Stack und Queue in der PHP-Array-Funktion (Codebeispiel)

Einführung in die Methode zur Implementierung von Stack und Queue in der PHP-Array-Funktion (Codebeispiel)

不言
不言nach vorne
2019-02-12 14:38:093101Durchsuche

Dieser Artikel bietet Ihnen eine Einführung in die Methode zur Implementierung von Stacks und Warteschlangen mithilfe von PHP-Array-Funktionen (Codebeispiele). Ich hoffe, dass er hilfreich ist Du.

„PHP ist die beste Sprache der Welt!“

Haha, frohes neues Jahr allerseits, denken Sie nach diesem Satz am Anfang, dass Ihr Drang zu fluchen und zu streiten so unaufhaltsam ist wie Zum Teufel? Während des chinesischen Neujahrs war ich wirklich gelangweilt, also habe ich das Buch „Einführung und Verbesserung der PHP+MySQL-Website-Entwicklung“ herausgeholt, das ich nicht kannte, als ich es kaufte, und es passierte, dass mein Der Raspberry Pi 3B konnte nach einfachen Anpassungen mit dem WLAN verbunden werden, ich habe ihn angeschlossen und als Experimentierserver verwendet. Ich habe gerade das Kapitel über Arrays gelesen und habe vier Funktionen zu den von PHP bereitgestellten Arrays gefunden: array_push(), array_pop(), array_unshift(), array_shift() kooperieren mit dem Array selbst, und der Stapel und die Warteschlange werden im Vergleich zur C-Sprache auf einen Schlag implementiert Das Glück kommt zu plötzlich.

Definieren Sie einen Stapel, der direkt ein $rangelist=array("Wolf Warrior","Wolf Warrior 2","Wandering Earth") ist, bedienen Sie ihn, drücken Sie array_push($rangelist,"Wu Jing "), pop $result=array_pop($rangelist) und poppe das Element direkt in $result ein. Verglichen mit dem folgenden in C-Sprache implementierten Code muss ich wirklich mit einem Lächeln programmieren. Früher habe ich mir immer Sorgen um die Internetentwicklung gemacht Tag. Ohne Schwert weiß ich nicht, was ich tun soll. Es ist wirklich dumm, ein so gutes Werkzeug vor sich zu haben, aber nicht zu wissen, wie man es aufnimmt.

typedef struct stack
{
	ElemType Data[MAXSIZE];
	int top;
}SqStack;
 

 
bool Push(SqStack *s,ElemType e)//压栈 
{
	if(s->top==MAXSIZE-1)
	    {
    	printf("Stack is Full\n");   	
		return FALSE;
	    }
	    s->Data[++(s->top)]=e;//先移指针再入数 
	    return TRUE;
}
bool  Pop(SqStack *s,ElemType *e)//出栈 
{
	if(s->top==-1)
	    {
    	printf("Stack is Empty\n");   	
		return FALSE;
	    }
		*e=s->Data[(s->top)--];//先取数再减指针 
		return TRUE;
}

Definieren Sie eine Warteschlange oder ein Array, $quenelist=array("Wolf Warrior","Wolf Warrior 2", "Wandering Earth"), queue array_unshift($quenelist,"Red Sea Action" ), dequeue, $result=array_shift($quenelist), die aus der Warteschlange entfernten Elemente werden in $result gespeichert, erfrischend und entspannt, schauen Sie sich noch einmal den C-Sprachcode an:

 typedef struct queue
{
	ElemType Data[MAXSIZE];
	int front,rear;
}SqQueue;
 
 
bool EnQueue(SqQueue *q,ElemType e)//入队 
{
	if((q->rear+1)%MAXSIZE==q->front)  //队满 
	    {
    	printf("Queue is Full\n");   	
		return FALSE;
	    }
	    q->Data[q->rear]=e;
		q->rear=(q->rear+1)%MAXSIZE;//队尾指针加1取模 
		printf("EnQueue data %d into Queue \n",e);
	    return TRUE;
}
bool  DeQueue(SqQueue *q,ElemType *e)//出队 
{
	if(q->rear==q->front)
	    {
    	printf("Queue is Empty\n");   	
		return FALSE;
	    }
		*e=q->Data[q->front];//先取数再移指针 
		q->front=(q->front+1)%MAXSIZE;  //队头指针加1取模  
		printf("DeQueue data is %d\n",*e);
		return TRUE;
}

Das obige ist der detaillierte Inhalt vonEinführung in die Methode zur Implementierung von Stack und Queue in der PHP-Array-Funktion (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen