Gestion des parenthèses dans la conversion d'expressions infixes en postfixes
Lors de la conversion d'expressions infixes en suffixes, les parenthèses jouent un rôle central dans la détermination de l'ordre de préséance. Voici comment gérer les parenthèses et plusieurs couches de parenthèses dans votre code :
Dans la méthode toPostFix(), lorsque vous rencontrez une parenthèse gauche (:
// opening ( if (in_fix.peek().type == 4) { post_fix.push(in_fix.pop()); }
Lorsque vous rencontrez une parenthèse droite parenthèse ):
//closing ) if(in_fix.peek().type == 5){ while(!(post_fix.isEmpty() || post_fix.peek().type == 4)){ postfixstr.append(post_fix.pop()); } if (post_fix.isEmpty()) ; // ERROR - unmatched ) else post_fix.pop(); // pop the ( in_fix.pop(); // pop the ) }
Ce code garantit que :
Par en implémentant cette logique, votre code sera capable de gérer plusieurs couches de parenthèses et de convertir correctement les expressions infixes contenant des parenthèses en suffixe expressions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!