问题描述
Implement function ToLowerCase() that has a string parameter str, and returns the same string in lowercase.
Example 1:
Input: “Hello”
Output: “hello”
Example 2:
Input: “here”
Output: “here”
Example 3:
Input: “LOVELY”
Output: “lovely”
思路分析
实现ToLowerCase()算法,能将字符串中的大写字母转换为小写字母。
利用字符集的性质,实现转换小写的功能。大写字符肯定在‘A’到‘Z’之间,减去‘A’之后再加上‘a’即可实现转换。
代码
class Solution {
public:
string toLowerCase(string str) {
for (int i = 0; i < str.length(); i++){
if (str[i] >= 'A' && str[i] <= 'Z')
str[i] = str[i] - 'A' + 'a';
}
return str;
}
};
时间复杂度:$O(n)$
空间复杂度:$O(n)$
反思
简单的字符串操作。
class Solution {
public:
string toLowerCase(string str) {
for (char& c : str){
if (c >= 'A' && c <= 'Z')
c = c - 'A' + 'a';
}
return str;
}
};