C# の回文

この記事では、回文文字列について説明します

これは面接でよく聞かれる質問です。

回文は両方向に読むことができます。文字列が C# 言語の回文かどうかを判断するにはどうすればよいでしょうか?
回文は、文字列の両端に同じ文字が含まれています。例:カヤック

以下の例を見て、文字列が回文かどうかを調べてみましょう。

 
 class Program
    {
        /// <summary>
        /// Determines whether the string is a palindrome.
        /// </summary>
        public static bool IsPalindrome(string word)
        {
            int min = 0;
            int max = word.Length - 1;
            while (true)
            {
                if (min > max)
                {
                    return true;
                }
                char a = word[min];
                char b = word[max];
                if (char.ToLower(a) != char.ToLower(b))
                {
                    return false;
                }
                min++;
                max--;
            }
        }

        static void Main()
        {
            string[] array =
  {
      "civic",     
      "deleveled",
      "Hannah",
      "kayak",
      "level",
        "examiron",
        "racecar",
      "radar",
      "refer",
      "reviver",
        "easywcf",
      "rotator",
      "rotor",
      "sagas",
      "solos",    
      "stats",
      "tenet",
        "Csharpstar",
      ""
  };

            foreach (string value in array)
            {
                Console.WriteLine("{0} = {1}", value, IsPalindrome(value));
            }
        }
    }

出力: