1544. Make The String Great - Easy

前往題目

想法

  • Stack

思路

  1. 循環每個字符
  2. 找到bad string時,彈出,其他都pushstack
  3. 建構答案並回傳

Code

class Solution {
    public String makeGood(String s) {
        Stack<Character> stack = new Stack<>();

        // 循環每個字符
        for (int i = 0; i < s.length(); ++i) {
            char cur = s.charAt(i); // 當前字符

            // 前一個是當前字母的小寫
            if (!stack.isEmpty() && 
                Math.abs(stack.peek() - cur) == 32) {
                stack.pop();
            } else {
                stack.push(cur);
            }
        }

        // 建構答案
        StringBuilder sb = new StringBuilder();
        while (!stack.isEmpty()) {
            sb.insert(0, stack.pop());
        }
        return sb.toString();
    }
}

1544. Make The String Great - Easy
https://f88083.github.io/2024/08/05/1544-Make-The-String-Great/
作者
Simon Lai
發布於
2024年8月5日
許可協議