实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。
示例 1:
输入: "Hello"
输出: "hello"
示例 2:
输入: "here"
输出: "here"
示例 3:
输入: "LOVELY"
输出: "lovely"
解法一: 不是那么了解就没有用ASCII码了,大写完全一致时replace()替换成小写。
/**
* @param date 2018/11/10 晚上
*/
var toLowerCase = function(str) {
var upper = {"a":"A","b":"B","c":"C","d":"D","e":"E","f":"F","g":"G","h":"H",
"i":"I","j":"J","k":"K","l":"L","m":"M","n":"N","o":"O","p":"P", "q":"Q",
"r":"R","s":"S","t":"T","u":"U","v":"V","w":"W","x":"X","y":"Y","z":"Z"}
for(var i in str){
for(var j in upper){
if(str[i]===upper[j]){
str=str.replace(str[i],j)
}
}
}
return str;
};
解法1.1 :
O(n) 时间复杂度
var toLowerCase = function(str) {
var lower={"A":"a","B":"b","C":"c","D":"d","E":"e","F":"f","G":"g","H":"h","I":"i",
"J":"j","K":"k","L":"l","M":"m","N":"n","O":"o","P":"p","Q":"q","R":"r",
"S":"s","T":"t","U":"u","V":"v","W":"w","X":"x","Y":"y","Z":"z"}
for(var i in str){
if(str[i]>'Z' || str[i]<'A') continue;
str=str.replace(str[i],lower[str[i]])
}
return str;
}
解法二:
var toLowerCase = function(str) {
var upper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
var lower = 'abcdefghijklmnopqrstuvwxyz';
for(var i in str){
for(var j in upper){
if(str[i]===upper[j]){
str=str.replace(str[i],lower[j])
}
}
}
return str;
};