Beispielerklärung der in PHP implementierten Stack-Datenstruktur

jacklove
Freigeben: 2023-04-02 18:44:01
Original
1990 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die von PHP implementierte Stapeldatenstruktur vorgestellt und der PHP-Definitionsstapel sowie die damit verbundenen Betriebsfähigkeiten wie Pushen, Knallen und Durchlaufen des Stapels anhand von Beispielen analysiert

Das Beispiel in diesem Artikel beschreibt die von PHP implementierte Stack-Datenstruktur. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Unter Verwendung des objektorientierten PHP-Denkens umfassen die Attribute des Stapels „Top“, „Maximale Speichernummer“ und „Speichercontainer“ (hier wird ein PHP-Array verwendet).

Der Code lautet wie folgt: Es sind mehrere Methoden zum Schieben, Knallen und Durchlaufen des Stapels implementiert:

<?php
class Stack{
  const MAXSIZE = 4;// 栈最大容量
  private $top = -1;
  private $stack = array();// 利用数组存储数据
  public function __construct(){
    $this->stack = array();
  }
  // 入栈
  public function push($ele){
    if ($this->top >= self::MAXSIZE-1){
      echo &#39;stack is full...&#39;;
      return false;
    }
    $this->stack[++$this->top] = $ele;// 此处必须是++i,先计算再使用
  }
  // 出栈,返回出栈元素
  public function pop(){
    if ($this->top == -1){
      echo &#39;stack is empty...&#39;;
      return false;
    }
    $ele = $this->stack[$this->top];
    unset($this->stack[$this->top--]);// 此处必须是i--,先使用再计算(注意出栈和入栈的区别)
    return $ele;
  }
  // 遍历栈
  public function show(){
    if ($this->top == -1){
      echo &#39;stack is empty...&#39;;
      return false;
    }
    for($i=$this->top; $i>-1; $i--){
      echo $this->stack[$i].&#39;<br/>&#39;;
    }
  }
}
$stack = new Stack;
$stack->push(1);
$stack->push(2);
$stack->push(3);
$stack->push(4);
//print_r($stack);
$stack->show();
$a = $stack->pop();
$a = $stack->pop();
$a = $stack->pop();
$stack->show();
Nach dem Login kopieren

Laufergebnisse:

4
3
2
1
1
Nach dem Login kopieren

Artikel, die Sie interessieren könnten:

Laravel Skills Query Builder Overlay Chain Calling Method Explanation

Teilen der PHP-Implementierung des Fibonacci-Sequenzcodes

PHP implementiert eine Array-Suchfunktion basierend auf Dichotomie Beispiel

Das obige ist der detaillierte Inhalt vonBeispielerklärung der in PHP implementierten Stack-Datenstruktur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage