题目

类型:数组
image.png

解题思路

代码

  1. class Solution {
  2. static int[] nums = new int[1010];
  3. public int calPoints(String[] ops) {
  4. int n = ops.length, idx = 0;
  5. for (int i = 0; i < n; i++, idx++) {
  6. if (ops[i].equals("+")){
  7. nums[idx] = nums[idx - 1] + nums[idx - 2];
  8. } else if (ops[i].equals("D")) {
  9. nums[idx] = nums[idx - 1] * 2;
  10. } else if (ops[i].equals("C")){
  11. idx -= 2;
  12. } else{
  13. nums[idx] = Integer.parseInt(ops[i]);
  14. }
  15. }
  16. int ans = 0;
  17. for (int i = 0; i < idx; i++) {
  18. ans += nums[i];
  19. }
  20. return ans;
  21. }
  22. }