算法修炼之路—【字符串】Leetcode 709 转换成小写字母

题目描述

实现函数ToLowerCase(),该函数接收一个字符串参数str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。

示例1:

输入: “Hello”
输出: “hello”

示例2:

输入: “here”
输出: “here”

示例3:

输入: “Lovely”
输出: “lovely”

思路分析

题目难度为简单 ,这里需要的就是遍历字符串,判定大写字母字符并转换成小写字母字符,这里唯一需要注意的一点是ASCII码表中的大小写字母码数相差32
我们使用StringBuiler为辅助容器,这里直接给出代码:

解题代码

    public static String solution(String s) {
        if(s == null) return null;
        
        StringBuilder res = new StringBuilder();
        
        for(int i = 0; i < s.length(); i++){
            char c = s.charAt(i);
            if(c < 'a')
                c = (char) (c + 32);
            res.append(c);
        }
        
        return res.toString();
    }

复杂度分析

时间复杂度: 这里对每个字符进行了一次访问,时间复杂度为O(n);
空间复杂度: 借用StringBuilder为辅助容器,故空间复杂度为O(n)

Github源码

完整可运行文件请访问GitHub

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 程序猿惹谁了 设计师: 上身试试
应支付0元
点击重新获取
扫码支付

支付成功即可阅读