C#LeetCode刷题之#58-最后一个单词的长度（Length of Last Word）

Given a string s consists of upper/lower-case alphabets and empty space characters ‘ ‘, return the length of last word in the string.

If the last word does not exist, return 0.

Note: A word is defined as a character sequence consists of non-space characters only.

Input: “Hello World”

Output: 5

```public class Program {

public static void Main(string[] args) {
var s = "world";
var res = LengthOfLastWord(s);
Console.WriteLine(res);

s = "hello csharp";
res = LengthOfLastWord2(s);
Console.WriteLine(res);

s = "a ";
res = LengthOfLastWord3(s);
Console.WriteLine(res);

}

private static int LengthOfLastWord(string s) {
s = s.Trim();
if(s.Length == 0) return 0;
for(var i = s.Length - 1; i >= 0; i--) {
if(s[i] == ' ') return s.Length - i - 1;
}
return s.Length;
}

private static int LengthOfLastWord2(string s) {
s = s.Trim();
var split = s.Split(' ');
if(split.Length == 0) return 0;
return split[split.Length - 1].Length;
}

private static int LengthOfLastWord3(string s) {
s = s.Trim();
return s.Length - s.LastIndexOf(' ') - 1;
}

}```

```5
6
1```