DEV Community

Discussion on: Interview Qs Decoded - # 2

Collapse
 
yavuztas profile image
Yavuz Tas

Here is my solution a little bit different. Sacrifices memory in favor of speed, reversing a string in log(n) time complexity :)

function reverseByDivide(input){
  if(input.length < 2)
    return input
  var left = input.substring(0, input.length/2)
  var right = input.substring(input.length/2, input.length)
  return reverseByDivide(right) + reverseByDivide(left)
}