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

Pythonで指定されたインデックスを使用して文字列をシャッフルするプログラム


文字列sとインデックスindのリストがあり、それらは同じ長さであるとします。文字列sは、位置iの文字が最終文字列のindexes[i]に移動するようにシャッフルされます。最後の文字列を見つける必要があります。

したがって、入力がs ="ktoalak" ind =[0,5,1,6,2,4,3]の場合、出力は「コルカタ」になります

Pythonで指定されたインデックスを使用して文字列をシャッフルするプログラム

これを解決するには、次の手順に従います-

  • fin_str:=サイズがsと同じで、0で埋められるリスト

  • sの各インデックスiと文字vについて、実行します

    • fin_str [ind [i]]:=v

  • fin_strに存在する各文字を結合して戻ります

例(Python)

理解を深めるために、次の実装を見てみましょう-

def solve(s, ind):
   fin_str = [0] * len(s)
   for i, v in enumerate(s):
      fin_str[ind[i]] = v

   return "".join(fin_str)

s = "ktoalak"
ind = [0,5,1,6,2,4,3]
print(solve(s, ind))

入力

"ktoalak", [0,5,1,7,2,4,3]

出力

kolkata

  1. 指定された文字列のすべての順列を出力するPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −文字列の可能なすべての順列を表示するために必要な文字列が与えられます。 次に、以下の実装のソリューションを見てみましょう- 例 # conversion def toString(List):    return ''.join(List) # permutations def permute(a, l, r):    if l == r:       print (toString(a))    e

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

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 文字列入力が与えられた場合、その文字列がパングラムであるかどうかを確認するPythonプログラムを生成する必要があります。 パングラムは、英語のアルファベットコレクションのすべての文字を含む文/一連の単語です。 では、問題を解決する方法を見てみましょう 入力文字列に存在する各文字が、手動で宣言するアルファベットセットに属しているかどうかをチェックするループを使用します。 上記のアプローチの実装は、-によって与えられます。 例 import string def ispangram