当前位置: 首页 > news >正文

网站建设北京海淀wordpress伪静态301

网站建设北京海淀,wordpress伪静态301,深圳网站制作哪里好,wordpress wrapper题目描述 中缀表达式是一个通用的算术或逻辑公式表示方法#xff0c;操作符是以中缀形式处于操作数的中间#xff08;例#xff1a;3 4#xff09;#xff0c;中缀表达式是人们常用的算术表示方法。后缀表达式不包含括号#xff0c;运算符放在两个运算对象的后面#…题目描述 中缀表达式是一个通用的算术或逻辑公式表示方法操作符是以中缀形式处于操作数的中间例3 4中缀表达式是人们常用的算术表示方法。后缀表达式不包含括号运算符放在两个运算对象的后面所有的计算按运算符出现的顺序严格从左向右进行不再考虑运算符的优先规则如(2 1) * 3 即2 1 3 *。利用栈结构将中缀表达式转换为后缀表达式。(测试数据元素为单个字符) 输入 中缀表达式 输出 后缀表达式 样例输入复制 A(B-C/D)*E 样例输出复制 ABCD/-E* 这个题我看到解法当中有通过编译原理当中的文法表达式来处理的也有用堆栈模拟的。 我的方案是用递归。 重点是要把表达式按优先级进行切割。我是这么想的对于表达式AB*C-(D*F*(FBC*D)-(A*H))*T先按优先级最低的、-号进行切分但是主要切分时要把括号内的表达式当成整体于是可以切割成AB*C(D*F*(FBC*D)-(A*H))*T三个子表达式【如果、-号无法切割就扫描*、/能不能切割还是不能就说明要么这个表达式只有一个原子要么就是整个表达式都用括号包起来了。】这里我们可以继续递归切割A已经是原子无需切割。第二个表达式可以继续切割成B和C这样每次切割我们可以得到两个列表一个用来装切割的表达式一个用来装两个表达式之间的符号。最后假设我们的处理函数为f那么对于这个例子实际上我要求f(AB*C-(D*F*(FBC*D)-(A*H))*T)根据刚才的分析显然他可以通过递归化简为f((D*F*(FBC*D)-(A*H))*T)f(A)f(B*C)-这样不断的递归f当中的表达式最后合并答案就是我们需要的逆波兰表达式可以观看代码#define _CRT_SECURE_NO_WARNINGS #includestdio.h #includestring.h #includemath.h #includealgorithm #includevector #includestring #includemap #includequeue #includeiostream #includelist #includeset #includestackusing namespace std;bool expr_cut(string root_expr,vectorstring expr_list,vectorchar op_list) {stackint s;int lenroot_expr.size();if(len1)return true;string expr_now;bool first_flagfalse,second_flagfalse;for(int i0;ilen;i){if((root_expr[i] || root_expr[i]-) s.empty()){expr_list.push_back(expr_now);op_list.push_back(root_expr[i]);expr_now.clear();first_flagtrue;continue;}else if(root_expr[i](){s.push(i);}else if(root_expr[i])){s.pop();}expr_nowexpr_nowroot_expr[i];}expr_list.push_back(expr_now);if(first_flag)return false;expr_list.clear(),op_list.clear(),expr_now.clear();for(int i0;ilen;i){if((root_expr[i]* || root_expr[i]/) s.empty()){expr_list.push_back(expr_now);op_list.push_back(root_expr[i]);expr_now.clear();second_flagtrue;continue;}else if(root_expr[i](){s.push(i);}else if(root_expr[i])){s.pop();}expr_nowexpr_nowroot_expr[i];}expr_list.push_back(expr_now);if(second_flag)return false;expr_list.clear(),op_list.clear(),expr_now.clear();root_exprroot_expr.substr(1,root_expr.size()-2);return expr_cut(root_expr,expr_list,op_list); }string f(string root_expr) {vectorstring expr_list;vectorchar op_list;bool is_atomexpr_cut(root_expr,expr_list,op_list);if(is_atom)return root_expr;else{string result;string first_itemf(expr_list[0]);for(int i1;iexpr_list.size();i){string second_itemf(expr_list[i]);resultfirst_itemsecond_itemresultop_list[i-1];first_itemsecond_item;}return result;} }int main() {string expr;while(cinexpr){string resultf(expr);coutresult;}return 0; }/* AB*C-(D*F*(FBC*D)-(A*H))*T (AB*C) */
http://www.dnsts.com.cn/news/11831.html

相关文章:

  • 小说网站开发需求沈阳市建设监理协会网站
  • wordpress 屏蔽升级企业网站seo从哪开始
  • 培训机构做网站宣传wordpress 主题排
  • 定制做网站c# 网站开发实例教程
  • 学做炒菜的网站哪个网站做h5最好
  • 我局在网站建设方面哈尔滨公司建站模板
  • 湖南工商网址seo sem 做网站
  • 旅行社网站方案东莞常平隐贤山庄门票多少
  • 易支付做网站接口怎么赚钱小程序制作流程视频
  • 苏州网站建设哪家公司好建设工程敎育网网站
  • 通辽网站设计网站架构设计师工作内容
  • 外国网站 游戏设定图资海网站建设
  • 烟台品牌网站建设企业所得税优惠政策最新2023规定
  • 网站整站优化推广方案wordpress 伪静态 主题失效
  • 台州做网站seo高端培训
  • 公司做网站需要注意些什么问题怎么做招投标网站
  • 网站点击率代码怎么做好网站开发_设计
  • 筹划建设智慧海洋门户网站seo入门黑帽培训教程
  • 网站建设中404什么意思安卓上搭建wordpress
  • asp装修公司网站建服装类网站需要考虑的因素
  • 百度站长电脑版网站多久
  • phpnow 搭建网站广州建网站模板
  • 良精企业网站系统怎么建设
  • 爱链接网如何使用广州网站排名优化费用
  • 福田网站设计wordpress增加下载文件
  • 成都集团网站设计推荐门户网站规划方案
  • 重庆博达建设集团股份有限公司网站如何确定一个网站的关键词
  • 提高网站权重工具网站做水印有没有影响
  • 国内免费产品发布网站青岛企业展厅设计公司
  • 合肥官方网站优化费用html5单页面网站建设