557.Reverse Words in a String III

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了557.Reverse Words in a String III相关的知识,希望对你有一定的参考价值。

思路,直接遍历,翻转可以单独抽出来作为一个函数,最后返回的时候使用了系统自带的函数进行构造返回,这样才不会超时,如果像下面这样构造代码,将会在最后一个测试样例时超时。

		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的主要内容,如果未能解决你的问题,请参考以下文章

557. Reverse Words in a String IIIeasy

557. Reverse Words in a String III

557. Reverse Words in a String III

557. Reverse Words in a String III

557. Reverse Words in a String III

557. Reverse Words in a String III