Reverse Words in a String

Problem

Given a string, you need to reverse the order of characters in each word within a sentence while still preserving whitespace and initial word order.

Example 1:

Input: "Let's take LeetCode contest"
Output: "s'teL ekat edoCteeL tsetnoc"

Note: In the string, each word is separated by single space and there will not be any extra space in the string.

Solution

public class Solution {
    public String reverseWords(String s) {
        if (s == null || s.length() == 0) return s;
        StringBuilder sb = new StringBuilder();
        for (String token : s.split(" +")) {
            sb.append(new StringBuilder(s).reverse()).append(" ");
        }
        return sb.toString().trim();
    }
}

Analysis

Easy and straightforward solution
If reverse() or trim() is not allowed in the interview
Then use toCharArray() to convert given input string as array then do the operations

results matching ""

    No results matching ""