本文主要是介绍C++ | Leetcode C++题解之第150题逆波兰表达式求值,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目:
题解:
class Solution {
public:int evalRPN(vector<string>& tokens) {int n = tokens.size();vector<int> stk((n + 1) / 2);int index = -1;for (int i = 0; i < n; i++) {string& token = tokens[i];if (token.length() > 1 || isdigit(token[0])) {index++;stk[index] = atoi(token.c_str());} else {switch (token[0]) {case '+':index--;stk[index] += stk[index + 1];break;case '-':index--;stk[index] -= stk[index + 1];break;case '*':index--;stk[index] *= stk[index + 1];break;case '/':index--;stk[index] /= stk[index + 1];break;}}}return stk[index];}
};
这篇关于C++ | Leetcode C++题解之第150题逆波兰表达式求值的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!