PHP-Tutorial: PHP implementiert eine stapelbasierte Funktion zur Auswertung von Suffixausdrücken

小云云
Freigeben: 2023-03-17 11:48:01
Original
1585 Leute haben es durchsucht

Was ist ein Postfix-Ausdruck? Postfix-Ausdruck bedeutet, dass er keine Klammern enthält und der Operator hinter den beiden Operanden steht. Alle Berechnungen werden streng von links nach rechts in der Reihenfolge durchgeführt, in der die Operatoren erscheinen (die Prioritätsregeln der Operatoren werden nicht mehr berücksichtigt). Dieses PHP-Tutorial verwendet hauptsächlich Beispiele, um die stapelbasierte Suffixausdrucksauswertungsfunktion in PHP zu beschreiben. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Implementierungscode:

<?php
class Stack{
  public $stack;
  public $stack_top;
  public function __construct(){
    $this->stack=array();
    $this->stack_top=-1;
  }
  public function push($data){
    $this->stack[]=$data;
    $this->stack_top++;
  }
  public function pop(){
    if(!$this->is_empty())
    {
      $this->stack_top--;
      return array_pop($this->stack);
    }else
    {
      echo "stack is empty";
    }
  }
  public function is_empty(){
    if($this->stack_top==-1)
    return true;
  }
}
$string="1243-*+63/-";
$arrs=str_split($string);
echo var_export($arrs);
$stack=new Stack();
foreach($arrs as $arr){
  switch($arr){
    case "+":$one=$stack->pop();$two=$stack->pop();$temp=$two + $one;$stack->push($temp);break;
    case "-":$one=$stack->pop();$two=$stack->pop();$temp=$two - $one;$stack->push($temp);break;
    case "*":$one=$stack->pop();$two=$stack->pop();$temp=$two * $one;$stack->push($temp);break;
    case "/":$one=$stack->pop();$two=$stack->pop();$temp=$two / $one;$stack->push($temp);break;
    default:$stack->push($arr);
  }
}
echo $stack->pop();
?>
Nach dem Login kopieren

Laufendes Ergebnis:

array (
0 => '1',
1 => '2',
2 => '4',
3 => '3',
5 => '*',
6 => '+',
8 => ',
10 => '-',
)1


Nach dem Studium dieses Artikels muss jeder ein gewisses Verständnis für Suffixausdrücke haben und auch gelernt haben, wie man PHP zur Stapelimplementierung verwendet -basierte Ausdrucksauswertungsfunktion. Diese Methode ist für Programmierer sehr nützlich. Weitere verwandte Inhalte werden später eingeführt, um alle zu ermutigen.

Ich hoffe, dass dieser Artikel für alle hilfreich ist, die sich mit PHP-Programmierung befassen.

Verwandte Empfehlungen:

3 empfohlene Artikel über Suffixausdrücke

PHP Vier arithmetische Operationen: Konvertieren von Infix-Ausdrücken in Postfix-Ausdrücke Beispiel einer Formel

Vier arithmetische Ausdrücke in Postfix-Ausdrücke umwandeln

Das obige ist der detaillierte Inhalt vonPHP-Tutorial: PHP implementiert eine stapelbasierte Funktion zur Auswertung von Suffixausdrücken. 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!