leetcode150:逆波兰表达式求值

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

           请你计算该表达式,返回一个表示表达式值的整数。('/' 向零截断    就是正数向下取整 负数向上取整)

什么事逆波兰表示法

               leetcode150:逆波兰表达式求值_第1张图片

思路: 细心会发现已经给我们提示了 , 遇到数字入栈 ,遇到运算符取出栈顶两个数字进行计算,并将结果压入栈中

  • 首先我们遍历字符串数组
  • 数字入栈 
  • 运算符取出栈顶 两个数字num1,num2 将计算结果推出栈中

/**
 * @param {string[]} tokens
 * @return {number}
 */
var evalRPN = function(tokens) {
   const stk=[];
   const n = tokens.length;

   for(let i=0;i0?Math.floor(num1/num2):Math.ceil(num1/num2))
           }
       }
   }

   return stk.pop()
};
const isNumber = (token)=>{
   return !('+'===token||'-'===token||'*'===token||'/'===token)
}

你可能感兴趣的:(javascript,开发语言,ecmascript)