C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#を使用して文字列が回文であるかどうかを確認するにはどうすればよいですか?


次の文字列が回文であるかどうかを確認する必要があるとします-

str = "Level";

そのためには、文字列を文字配列に変換して、各文字をチェックします-

char[] ch = str.ToCharArray();

今逆を見つけます-

Array.Reverse(ch);

Equalsメソッドを使用して、逆が元の配列と等しいかどうかを確認します-

bool res = str.Equals(rev, StringComparison.OrdinalIgnoreCase);

以下は完全なコードです-

using System;
namespace Demo {
   class Program {
      static void Main(string[] args) {

         string str, rev;
         str = "Level";
         char[] ch = str.ToCharArray();
         Array.Reverse(ch);
         rev = new string(ch);
         bool res = str.Equals(rev, StringComparison.OrdinalIgnoreCase);
     
         if (res == true) {
            Console.WriteLine("String " + str + " is a Palindrome!");
         } else {
            Console.WriteLine("String " + str + " is not a Palindrome!");
         }
         Console.Read();
      }
   }
}

出力

String Level is a Palindrome!

  1. 文字列が回文であるかPythonを使用していないかを確認する方法は?

    Pythonの標準ライブラリのreveresed()関数を使用します。リストオブジェクトに変換できる反転オブジェクトを返します >>> str1='malayalam' >>> l1=list(reversed(str1)) >>> l1 ['m', 'a', 'l', 'a', 'y', 'a', 'l', 'a', 'm'] join()メソッドを使用してリスト内のすべての文字

  2. Pythonで変数の型が文字列であるかどうかを確認するにはどうすればよいですか?

    isinstance(var、class)を使用して、varが指定されたクラスのインスタンスであるかどうかを確認できます。 Python 2.xでは、strとunicodeの基本クラスはbasestringです。したがって、次のように使用できます。 >>> s = 'A string' >>> isinstance(s, basestring) True >>> isinstance(s, str) True >>> isinstance(10, basestring) False 注:Python