java 186.字符串II.java中的反向字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 186.字符串II.java中的反向字相关的知识,希望对你有一定的参考价值。

public class Solution {
    public void reverseWords(char[] s) {
        if (s == null) return;
        int len = s.length;
        // 1, reverse the whole sentence
        reverse(s, 0, len - 1);
        int pre = 0;
        // 2, reverse each word
        for (int i = 0; i < len; i++) {
            if (s[i] == ' ') {
                reverse(s, pre, i - 1);
                pre = i + 1;
            }
        }
         // 3, reverse the last word, if there is only one word this will solve the corner case
        reverse(s, pre, len - 1);
    }
    
    private void reverse(char[] s, int i, int j) {
        while (i < j) {
            char temp = s[i];
            s[i] = s[j];
            s[j] = temp;
            i++;
            j--;
        }
    }
}

以上是关于java 186.字符串II.java中的反向字的主要内容,如果未能解决你的问题,请参考以下文章

java 186.字符串II.java中的反向字

java 186.字符串II.java中的反向字

java 186.字符串II.java中的反向字

java 186.字符串II.java中的反向字

java 541.反向字符串II(#)。java

java 541.反向字符串II(#)。java