151. 翻轉字串裡的單詞
給定乙個字串,逐個翻轉字串中的每個單詞。
示例 1:
輸入: 「the sky is blue」
輸出: 「blue is sky the」
示例 2:
輸入: " hello world! "
輸出: 「world! hello」
解釋: 輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。
示例 3:
輸入: 「a good example」
輸出: 「example good a」
解釋: 如果兩個單詞間有多餘的空格,將反轉後單詞間的空格減少到只含乙個。
說明:無空格字元構成乙個單詞。
輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。
如果兩個單詞間有多餘的空格,將反轉後單詞間的空格減少到只含乙個。
這個是我在學習.net string的時候就開始接觸的乙個例子使用for迴圈進行逆序1:去除(包含乙個或多個)空格,使用\s+
2:將1得到的陣列進行逆序,這裡可以使用for迴圈,也可以使用collection.reverse()方法
3:使用string.join()方法
stringbuilder builder=
newstringbuilder()
;string[
] arr=s.
split
("\\s+");
for(
int i=arr.length-
1;i>=
0;i--
)return builder.
tostring()
.trim()
;
使用collection.reverse()進行逆序
string[
] arr=s.
split
("\\s+");
collections.
reverse
(arrays.
aslist
(arr));
return string.
join
(" "
,arr)
.trim()
;
在使用collection.reverse()方法的時候,我發現arrays.aslist(arr),這個函式真是太好用了,我以前竟然都沒有接觸過,omgharrays.aslist()方法要點:
【1. 要點】
該方法是將陣列轉化成list集合的方法。
list list = arrays.aslist(「a」,「b」,「c」);
注意:(1)該方法適用於物件型資料的陣列(string、integer…)
(2)該方法不建議使用於基本資料型別的陣列(byte,short,int,long,float,double,boolean)
LeetCode 151 翻轉字串
給定乙個字串,逐個翻轉字串中的每個單詞。示例 1 輸入 the sky is blue 輸出 blue is sky the 示例 2 輸入 hello world 輸出 world hello 解釋 輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。示例 3 輸入 a good ...
Leetcode 151 翻轉字串
給定乙個字串,逐個翻轉字串中的每個單詞。示例 1 輸入 the sky is blue 輸出 blue is sky the 示例 2 輸入 hello world 輸出 world hello 解釋 輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。示例 3 輸入 a good ...
leetcode151翻轉字串單詞
leetcode151.翻轉字串裡的單詞 題目描述 給定乙個字串,逐個翻轉字串中的每個單詞 示例 輸入 the sky is blue 輸出 blue is sky the 再這裡需要逐一的是輸入的字串可以在前面或者後面包含多餘的空格,但反轉後的單詞間的空格只能減少到乙個。思路 在這裡考慮進行兩次翻...