leetcode记录:难度简单:709. To Lower Case

题目出处:https://leetcode.com/problems/to-lower-case/

题目描述:

implement函数ToLowerCase(),它有一个字符串参数str,并以小写返回相同的字符串

Example 1:

Input: "Hello"
Output: "hello"

Example 2: 

Input: "LOVELY"
Output: "lovely"

 

思路:

直接 return str.toLowerCase()明显就不是题目的本意,题目的本意就是返回字母对应的unicode编码,通过大小写的差值去转化。

var toLowerCase = function(str) {
  const DIFF = 'a'.charCodeAt(0) - 'A'.charCodeAt(0);
    let strArr = str.split('');
    let resultArr = [];
    strArr.forEach((item) => {
        item = (item >= 'A' && item <= 'Z') ? String.fromCharCode(item.charCodeAt(0) + DIFF) : item;
        resultArr.push(item)
    });
    return resultArr.join('')

    
};

leetcode记录:难度简单:709. To Lower Case

 

笔记:

foreach,map这些方法不能改变原始数组,所以要用新数组存起来forEach究竟能不能改变数组的值

上一篇:LeetCode算法题-To Lower Case(Java实现)


下一篇:LeetCode 709.To Lower Case