mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 19:44:45 +08:00
添加150. 逆波兰表达式求值javaScript版本
This commit is contained in:
@ -197,6 +197,32 @@ func evalRPN(tokens []string) int {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
javaScript:
|
||||||
|
|
||||||
|
```js
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {string[]} tokens
|
||||||
|
* @return {number}
|
||||||
|
*/
|
||||||
|
var evalRPN = function(tokens) {
|
||||||
|
const s = new Map([
|
||||||
|
["+", (a, b) => a * 1 + b * 1],
|
||||||
|
["-", (a, b) => b - a],
|
||||||
|
["*", (a, b) => b * a],
|
||||||
|
["/", (a, b) => (b / a) | 0]
|
||||||
|
]);
|
||||||
|
const stack = [];
|
||||||
|
for (const i of tokens) {
|
||||||
|
if(!s.has(i)) {
|
||||||
|
stack.push(i);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
stack.push(s.get(i)(stack.pop(),stack.pop()))
|
||||||
|
}
|
||||||
|
return stack.pop();
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
Reference in New Issue
Block a user