LeetCode算法心得——故障键盘(StringBuilder)

大家好,我是晴天学长,很久都没有用StringBuilder类了,切记这个自带字符串反转的方法,会在实际比赛中节约不少的时间。
LeetCode算法心得——故障键盘(StringBuilder)_第1张图片


1 )故障键盘


2) .算法思路

故障键盘
1.首先把全部字母给你的了
2.只会反转前面的字符

1.字符串的拼接类stringBuffer
2.遍历s,遇到i就反转
3.一个i,直接反转
4.直到遍历结束


3).代码示例

 static class Solution {
        public static String finalString(String s) {
            StringBuilder ans = new StringBuilder();
            for (int i = 0; i < s.length(); i++) {
                if (s.charAt(i)=='i'){
                    ans = ans.reverse();
                }
                else {
                    ans.append(s.charAt(i));
                }
            }
            return ans.toString();
        }
    }

4).总结

  • 它创建了一个名为ans的StringBuilder对象,用于存储修改后的字符串。
  • 使用for循环遍历输入字符串s中的每个字符。
  • 在循环内部,它使用字符串的charAt方法检查当前字符是否等于字母’i’。
  • 如果字符是’i’,则使用reverse方法反转ans的内容。这意味着如果字符串包含多个’i’字符,则每次都会
  • 反转之前追加的字符。
  • 如果字符不是’i’,则使用append方法将字符追加到ans的末尾。
  • 在遍历完输入字符串的所有字符后,使用toString方法将ans的StringBuilder对象转换为字符串,并返回它。

你可能感兴趣的:(算法,算法,leetcode,职场和发展)