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

文字列が回文であるかどうかを再帰を使用してチェックするPythonプログラム


文字列が回文であるかどうかを再帰手法を使用して確認する必要がある場合は、単純なインデックス作成とユーザー定義関数、および再帰が使用されます。

回文とは、左から右、右から左に読み取ったときに、それぞれのインデックスに同じ文字が含まれる文字列または値です。

再帰は、より大きな問題の小さなビットの出力を計算し、これらのビットを組み合わせて、より大きな問題の解決策を提供します。

以下は同じのデモンストレーションです-

def check_palindrome(my_str):
   if len(my_str) < 1:
      return True
   else:
      if my_str[0] == my_str[-1]:
         return check_palindrome(my_str[1:-1])
      else:
         return False
my_string = str(input("Enter the string :"))
print("The string is ")
print(my_string)
if(check_palindrome(my_string)==True):
   print("The string is a palindrome")
else:
   print("The string isn't a palindrome")

出力

Enter the string : MalaM
MalaM
The string is
MalaM
The string is a palindrome

説明

  • 「check_palindrome」という名前のメソッドは、パラメータとして文字列を取ります。
  • 文字列のサイズが1未満の場合、「True」が出力として返されます。
  • それ以外の場合は、文字列の最後の要素がチェックされ、最初の要素と一致するかどうかが確認されます。
  • このメソッドは、2番目のインデックスから最後のインデックスまでの要素で再度呼び出されます。最後のインデックス値は設計により除外されます。
  • それ以外の場合、関数はfalseを返します。
  • 関数の外で、ユーザーは文字列を入力するように求められます。
  • この文字列はコンソールに表示されます。
  • この文字列をパラメータとして渡すことで、メソッドが呼び出されます。
  • その値が「True」と計算された場合、関連するメッセージがコンソールに表示されます。
  • それ以外の場合は、コンソールに別のメッセージが表示されます。

  1. Pythonでツリーの順序が回文であるかどうかを確認するプログラム

    各ノードに0〜9の数字が含まれる二分木があるとすると、その順序の走査が回文であるかどうかを確認する必要があります。 したがって、入力が次のような場合 その場合、その順序トラバーサルは[2,6,10,6,2]であるため、出力はTrueになります。 これを解決するには、次の手順に従います- rootがnullの場合、 Trueを返す スタック:=新しいスタック curr:=root 順序:=新しいリスト スタックが空でないか、currがnullでない場合は、 currがnullでない場合は、 currをスタックにプッシュします curr:=currの左側 node

  2. 指定された文字列がキーワードであるかどうかを確認するPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −数値が与えられているので、その数値が2の累乗であるかどうかを確認する必要があります。 キーワードは、特定の用途で任意の言語によって予約されている特別な単語であり、識別子として使用することはできません。 指定された文字列がキーワードであるかどうかを確認するために、以下で説明するようにキーワードモジュールを使用しました。 例 # keyword module import keyword # Function def isKeyword(word) :    # list of all