• 大小: 2KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-03
  • 标签:

资源简介

本代码可简单实现中缀表达式转换为逆波兰表达式,设计的栈底字符为#号,输入串默认尾部追加#号,没有单独将非运算符归入各自的栈,只是输出成一个逆波兰表达式的字符串。比较简单,如有错误之处,望您评论指出。

资源截图

代码片段和文件信息

#include “InversePolandexpression.h“


InversePolandexpression::InversePolandexpression()
{
}


InversePolandexpression::~InversePolandexpression()
{
}

bool InversePolandexpression::isHigherPriority(int left int right)
{
if (left > right)
{
return true;
}
else
{
return false;
}
}
int InversePolandexpression::getPrecedence(char now)
{
switch (now)
{
case ‘+‘:
case ‘-‘:
return 1;
case ‘@‘:
case ‘*‘:
case ‘/‘:
return 2;
case ‘^‘:
case ‘%‘:
return 3;
case‘#‘:
default:
return 0;
}
}
string InversePolandexpression::translateStringToexpression(string infix)
{
string result;
m_stack.push(‘#‘);//为主栈自动添加一个标记符
for (int i = 0; i < infix.length(); i++)
{
if (infix[i] == ‘#‘)
{
break;
}
if (isalpha(infix[i

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        2488  2015-12-18 21:43  InversePolandexpression.cpp
     文件         607  2015-12-18 21:02  InversePolandexpression.h
     文件         478  2015-12-18 20:43  test.cpp

评论

共有 条评论