I have this
string s1 = "My name is X Y Z" and I want to reverse the order of the words so that
s1 = "Z Y X is name My".
I can do it using an additional array. I thought hard but is it possible to do it inplace (without using additional data structures) and with the time complexity being O(n)?