views:

239

answers:

3

I asked this question in a few interviews. I want to know from the Stackoverflow readers as to what should be the answer to this question.

Such a seemingly simple question, but has been interpreted quite a few different ways.

A: 

Taken from something called "Hacking a Google Interview" that was somewhere on my computer ... don't know from where I got it but I remember I saw this exact question inside ... here is the answer:

Reverse the string by swapping the first character with the last character, the second with the second-to-last character, and so on. Then, go through the string looking for spaces, so that you find where each of the words is. Reverse each of the words you encounter by again swapping the first character with the last character, the second character with the second-to-last character, and so on.

Sylvain
A: 

This came up in LessThanDot Programmer Puzzles

Remou
+1  A: 

if your definition of a "word" is a series of non-whitespace characters surrounded by a whitespace character, then in 5 second pseudocode you do:

var words = split(inputString, " ")
var reverse = new array
var count = words.count -1
var i = 0
while count != 0
   reverse[i] = words[count]
   count--
   i++
return reverse
Jason