/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param tokens string字符串一维数组
* @return int整型
*/
function evalRPN( tokens ) {
// write code here
console.log( tokens )
let stack = []
let calc = function ( operate ) {
let b = +stack.pop()
let a = +stack.pop()
switch ( operate ) {
case '+':
return a + b
case '-':
return a - b
case '*':
return a * b
case '/':
return a / b
}
}
for ( let i = 0; i < tokens.length; i++ ) {
const curEle = tokens[ i ]
if ( '+-*/'.indexOf( curEle ) > -1 ) {
stack.push(parseInt(calc( curEle )))
} else {
stack.push( curEle )
}
}
return stack.pop()
}
module.exports = {
evalRPN: evalRPN
};