557.Reverse Words in a String III
阿新 • • 發佈:2017-09-19
函數 nbsp cnblogs 自帶 pub reverse iii char turn
思路,直接遍歷,翻轉可以單獨抽出來作為一個函數,最後返回的時候使用了系統自帶的函數進行構造返回,這樣才不會超時,如果像下面這樣構造代碼,將會在最後一個測試樣例時超時。
String result = ""; for (char _ : chars) { result += _; } return result;
class Solution { public String reverseWords(String s) { char[] chars = s.toCharArray(); for (int start = 0, end = 0; end < s.length(); end++) {if (chars[end] == ‘ ‘) { for (int i1 = start, i2 = end - 1; i1 < i2; i1++, i2--) { char temp = chars[i1]; chars[i1] = chars[i2]; chars[i2] = temp; } start = end + 1; continue; } if (end == s.length() - 1) // reverse(start,end) { for (int i1 = start, i2 = end; i1 < i2; i1++, i2--) { char temp = chars[i1]; chars[i1] = chars[i2]; chars[i2] = temp; } start= end + 1; } } return new String(chars); } }
557.Reverse Words in a String III