題目: 給定一個(gè)僅包含大小寫(xiě)字母和空格 ' ' 的字符串 s,返回其最后一個(gè)單詞的長(zhǎng)度。
例如:
輸入: "Hello Shawn"
輸出: 5
輸入: "Hello Alex"
輸出: 4
解題思路
思路一 方法很容易理解, 分割字符串, 取最后元素返回其長(zhǎng)度
具體方法
1.去掉首尾空格(這個(gè)很容易漏掉)
2.以" "分割字符串
3.返回?cái)?shù)組最后元素的長(zhǎng)度
func lengthOfLastWord(_ s: String) -> Int {
let send = s.trimmingCharacters(in: CharacterSet.whitespaces)
let arr = send.components(separatedBy: " ");
return arr.last!.count
}
思路二 方法同樣很容易理解, 翻轉(zhuǎn)字符串, 遍歷直到第一個(gè)空格, 返回
具體方法
1.去掉首尾空格(這個(gè)還是很容易漏掉)
2.for循環(huán) 翻轉(zhuǎn)之后的字符串
3.有空格, 結(jié)束for循環(huán)返回?cái)?shù)組最后元素的長(zhǎng)度
func lengthOfLastWord(_ s: String) -> Int {
let send = s.trimmingCharacters(in: CharacterSet.whitespaces)
var result = 0
for i in send.reversed() {
if i == " " {
return result;
}
result += 1
}
return result;
}
題目來(lái)源:力扣(LeetCode) 感謝力扣爸爸 :)
IOS 算法合集地址