首页 > 其他分享 >逆波兰

逆波兰

时间:2023-05-08 21:13:19浏览次数:34  
标签:int long 波兰 整型 字符串 bit 表达式

题目:

给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。

请你计算该表达式。返回一个表示表达式值的整数

 

stoi :将字符串转为整型 int

stol:将字符串转为长整型(32位)long

stoll:将字符串转为长整型(64位)long long

 

class Solution {
public:
    int evalRPN(vector<string>& tokens) {
        stack<long long> st;
        for(int i=0;i<tokens.size();i++)//注意vector里输入的是字符串,因此需要用”“
        {
            if(tokens[i]== "+" || tokens[i]=="-" ||tokens[i]=="*" || tokens[i] =="/")
            {
                long long num1=st.top();
                st.pop();
                long long num2=st.top();
                st.pop();
                if(tokens[i]=="+")st.push(num2+num1);
                if(tokens[i]=="-")st.push(num2-num1);
                if(tokens[i]=="*")st.push(num2*num1);
                if(tokens[i]=="/")st.push(num2/num1);
            }
            else
            {
                st.push(stoll(tokens[i]));
            }
        }

        int result=st.top();
        st.pop();
        return result;

    }
};

 

补充知识:

计算机的基本单位:bit ,bit只有两种形式0和1

8bit=1B 字节

 

标签:int,long,波兰,整型,字符串,bit,表达式
From: https://www.cnblogs.com/gaishuobulao/p/17383152.html

相关文章