using System; public class Test { public static bool IsPalindrome(string value) { if ( string.IsNullOrEmpty(value) ) return true; return isPalindrome(value, 0, value.Length - 1); } private static bool isPalindrome(string value, int startChar, int endChar) { if ( value[startChar] != value[endChar] ) return false; if ( startChar >= endChar ) return true; return isPalindrome(value, startChar + 1, endChar - 1); } public static void Main() { Console.WriteLine(IsPalindrome("")); Console.WriteLine(IsPalindrome("1")); Console.WriteLine(IsPalindrome("11")); Console.WriteLine(IsPalindrome("121")); Console.WriteLine(IsPalindrome("123")); } }