Skip to content

Instantly share code, notes, and snippets.

@ezy023
Created April 26, 2013 01:28
Show Gist options
  • Save ezy023/5464535 to your computer and use it in GitHub Desktop.
Save ezy023/5464535 to your computer and use it in GitHub Desktop.
Implement String#reverse and check for palindromes using recursive methods
def reverse(string)
return string if string.length <= 1
reverse(string[1..-1]) + string[0]
end
puts reverse("string")
puts reverse("racecar")
def palindrome(string)
puts string
return true if string.length <= 1
string[0] == string[-1] && palindrome(string[1..-2])
end
def palindrome_short(string)
puts string
return true if string.length <= 1
string[0] == string[-1] && palindrome_short(string[1..-2])
end
puts palindrome("racecar")
puts "=========="
puts palindrome_short("racecar")
puts "=========="
puts palindrome("vegas")
puts "=========="
puts palindrome_short("vegas")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment