Sorting the Sentence LeetCode Solution - The Coding Shala
Home >> LeetCode >> Sorting the Sentence
Other Posts You May Like
In this post, we will learn how to solve LeetCode's Sorting the Sentence Problem and will implement its solution in Java.
Sorting the Sentence Problem
A sentence is a list of words that are separated by a single space with no leading or trailing spaces. Each word consists of lowercase and uppercase English letters. A sentence can be shuffled by appending the 1-indexed word position to each word then rearranging the words in the sentence.
For example, the sentence "This is a sentence" can be shuffled as "sentence4 a3 is2 This1" or "is2 sentence4 This1 a3". Given a shuffled sentence s containing no more than 9 words, reconstruct and return the original sentence.
Example 1:
Input: s = "is2 sentence4 This1 a3"
Output: "This is a sentence"
Explanation: Sort the words in s to their original positions "This1 is2 a3 sentence4", then remove the numbers.
Example 2:
Input: s = "Myself2 Me1 I4 and3"
Output: "Me Myself and I"
Practice this problem on LeetCode.
LeetCode - Sorting the Sentence Java Solution
Approach 1
First, change the string into the array by using split. In the next step use a custom Comparator to sort the array.
Java Program:
class Solution { public String sortSentence(String s) { String[] arr = s.split(" "); Arrays.sort(arr, new Comparator<String>() { public int compare(String s1, String s2) { int ch1 = s1.charAt(s1.length()-1); int ch2 = s2.charAt(s2.length()-1); if(ch1 <= ch2) { return -1; } else return 1; } }); StringBuilder str = new StringBuilder(); for(String st : arr) { String temp = st.substring(0, st.length()-1); str.append(temp + " "); } return str.toString().trim(); } }
- LeetCode - Maximum Year Population
- LeetCode - Incremental Memory Leak
- LeetCode - Number of Recent Calls
- LeetCode - Valid Boomerang
- LeetCode - Valid Square
Comments
Post a Comment