Remove Leading/duplicate/trailing spaces
public String removeSpace(String input) {
if (input.isEmpty()) return input;
char[] array = input.toCharArray();
int slow = 0;
for (int i = 0; i < array.length; i++){ //fast pointer
char current = array[i];
if (char == ' ' && (i == 0 || array[i - 1] == ' ')){
continue;
}
array[slow++] = char;
}
//process possible last space
if (slow > 0 && array[slow] == ' ') return new String(array, 0, slow - 1);
return new String(array, 0, slow);Last updated