2012-03-13 3 views
-6

사용자가 회귀 식 문자열을 입력하면 true를 반환하는 재귀 적 루비 함수를 만들려고합니다. 그렇지 않으면 false를 반환합니다.Ruby에서 문자열이 palindrome인지 재귀 적으로 확인하는 방법

또한 반환 값의 기본 사례를 갖기 위해 노력 중입니다.

+7

루비처럼 보이지 않습니까? – rjz

+1

이것이 카운터 기능이라고 생각하면 목표에서 꽤 멀어집니다. Java에서. 심하게 코드화했다. –

답변

2

특히 재귀 솔루션을 요청하기 때문에 숙제를 냄새가납니다.

재귀가있는 솔루션은 첫 번째 문자가 마지막 문자와 같은지 확인하고 반복적으로 문자열을 확인하는 것입니다. 비어 있거나 하나의 문자열은 회문입니다.

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

루비! ;)

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

제목의 단어 세 개 중 두 개를 얻었지만 "재귀 적"인 것처럼 보이지 않았습니다 ... – Ashe

+0

은 루비에 대한 단서가없는 것처럼 보였습니다. – beanie

+0

왜냐하면 분명히 숙제 일 것 같아요. ;-) – Ashe

관련 문제