如何以递归方式检查Ruby中的字符串是否为回文结构

时间:2012-03-13 22:59:46

标签: ruby

我正在尝试创建一个递归ruby函数,如果用户输入的是palindrome字符串,则返回true,否则返回false。

我也试图为返回值

设置一个基本案例

2 个答案:

答案 0 :(得分:2)

因为您特别要求递归解决方案,所以闻起来像家庭作业。

带递归的解决方案是检查第一个是否等于最后一个字母,如果它们是递归检查中间的字符串。空字符或一个字符串是回文。

def palindrome?(str)
    str.length <= 1 or (str[0,1] == str[-1,1] and palindrome?(str[1..-2]))
end

答案 1 :(得分:1)

红宝石! ;)

def palindrom?(string)
  string == string.reverse
end