0
点赞
收藏
分享

微信扫一扫

算法刷题计划五——剑指offer题集3(LeetCode)

暮晨夜雪 2022-03-15 阅读 45

替换空格

请实现一个函数,把字符串 s 中的每个空格替换成"%20"。

示例 1:

输入:s = “We are happy.”
输出:“We%20are%20happy.”

class Solution {
    public String replaceSpace(String s) {
        char[] a=new char[s.length()*3];
        int i=0;
        for(char x:s.toCharArray())
        {
            if(x==' ')
            {
                a[i++]='%';
                a[i++]='2';
                a[i++]='0';
            }else
            {
                a[i++]=x;
            }
        }
        String sa=new String(a,0,i);
        return sa;
    }
}

个人总结: 不熟练。可使用StringBuilder

左旋转字符串

字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。

示例 1:

输入: s = “abcdefg”, k = 2
输出: “cdefgab”

示例 2:

输入: s = “lrloseumgh”, k = 6
输出: “umghlrlose”

class Solution {
    public String reverseLeftWords(String s, int n) {
        StringBuilder str=new StringBuilder();
        str.append(s.substring(n,s.length()));
        str.append(s.substring(0,n));
        return str.toString();
    }
}

个人总结: 思路清晰

举报

相关推荐

0 条评论