编译原理的一些小程序
2021/10/29 22:40:51
本文主要是介绍编译原理的一些小程序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
中缀表达式转换为后缀(只能是字母)
#include <bits/stdc++.h> #define rep(i,a,b) for(int i=(a);i<=(b);i++) #define ll long long using namespace std; vector<char> st; int main() { string s; cin>>s; map<char,ll> mp; mp['+'] = mp['-']=0; mp['*'] = mp['/']=1; mp['('] = mp[')']=2; for(int i =0;i<s.size();i++){ if(s[i]<='z' && s[i]>= 'a') cout<<s[i]; else{ if(s[i] == ')'){ while(st.back()!='('){ cout<<st.back(); st.pop_back(); } st.pop_back(); } else{ while(!st.empty() && mp[st.back()]>=mp[s[i]] && st.back()!='('){ cout<<st.back(); st.pop_back(); } st.push_back(s[i]); } } } while(!st.empty()){ cout<<st.back(); st.pop_back(); } return 0; } //a+b*c+(d*e+f)*gView Code
这篇关于编译原理的一些小程序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-13微信小程序如何封装接口域名?-icode9专业技术文章分享
- 2024-11-13如何在微信小程序中实现直传功能?-icode9专业技术文章分享
- 2024-11-13如何在小程序的地图组件中添加标记和文字?-icode9专业技术文章分享
- 2024-11-13在微信小程序的地图组件中如何实现自定义标记和气泡?-icode9专业技术文章分享
- 2024-11-01微信小程序教程:零基础入门到实战
- 2024-11-01微信小程序全栈教程:从入门到实践
- 2024-10-31微信小程序怎么实现关注公众号功能-icode9专业技术文章分享
- 2024-10-30微信小程序cover-view,支持bindtap吗-icode9专业技术文章分享
- 2024-10-30微信小程序的cover-image支持bindtap吗-icode9专业技术文章分享
- 2024-10-30微信小程序web-view怎么设置高度?-icode9专业技术文章分享