Gestion des parenthèses dans la conversion d'expressions Infix en Postfix
La conversion d'expressions infixes en expressions postfixes est une tâche courante dans la conception du compilateur. La gestion correcte des parenthèses est cruciale pour garantir une conversion précise.
Votre question concerne la gestion des parenthèses dans votre méthode Java, toPostFix. Pour résoudre ce problème, suivez ces étapes :
Lorsque vous rencontrez une parenthèse ouverte (:
// opening ( if (in_fix.peek().type == 4) { post_fix.push(in_fix.pop()); }
Lorsque vous rencontrez une parenthèse fermée ):
//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 processus garantit que :
En implémentant ces étapes, votre méthode toPostFix gérera correctement plusieurs couches de parenthèses dans les expressions infixes.
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!