1. 程式人生 > >C#LeetCode刷題之#709-轉換成小寫字母(To Lower Case)

C#LeetCode刷題之#709-轉換成小寫字母(To Lower Case)

問題

實現函式 ToLowerCase(),該函式接收一個字串引數 str,並將該字串中的大寫字母轉換成小寫字母,之後返回新的字串。

輸入: "Hello"

輸出: "hello"

輸入: "here"

輸出: "here"

輸入: "LOVELY"

輸出: "lovely"


Implement function ToLowerCase() that has a string parameter str, and returns the same string in lowercase.

Input:

"Hello"

Output: "hello"

Input: "here"

Output: "here"

Input: "LOVELY"

Output: "lovely"


示例

public class Program {

    public static void Main(string[] args) {
        var str = "Hello Iori!";

        var res = ToLowerCase(str);
        Console.WriteLine(res);

        str = "Iori";

        res = ToLowerCase2(str);
        Console.WriteLine(res);

        Console.ReadKey();
    }

    private static string ToLowerCase(string str) {
        return str.ToLower();
    }

    private static string ToLowerCase2(string str) {
        var sb = new StringBuilder();
        foreach(var c in str) {
            if(c >= 'A' && c <= 'Z') sb.Append((char)(c + 32));
            else sb.Append(c);
        }
        return sb.ToString();
    }

}

以上給出2種演算法實現,以下是這個案例的輸出結果:

hello iori!
iori

分析:

顯而易見,以上演算法的時間複雜度均為: O(n) 。