Pythonでカラーリストを分割するプログラム
色の文字列のリストがあり、これらに「赤」、「緑」、「青」が含まれている場合、赤が緑の前に、緑が青の前になるようにリストを分割する必要があります。
したがって、入力がcolors =["blue"、 "green"、 "blue"、 "red"、 "red"]の場合、出力は['red'、'red'、'green'、 '青'、'青']
これを解決するには、次の手順に従います-
-
緑:=0、青:=0、赤:=0
-
strsの文字列ごとに、実行します
-
文字列が「赤」と同じ場合、
-
strs [blue]:="blue"
-
青:=青+1
-
strs [green]:="green"
-
緑:=緑+1
-
strs [red]:="red"
-
赤:=赤+ 1
-
-
それ以外の場合、文字列が「緑」と同じ場合、
-
strs [blue]:="blue"
-
青:=青+1
-
strs [green]:="green"
-
緑:=緑+1
-
-
それ以外の場合、文字列が「青」と同じ場合、
-
strs [blue]:="blue"
-
青:=青+1
-
-
-
strsを返す
理解を深めるために、次の実装を見てみましょう-
例
class Solution: def solve(self, strs): green = 0 blue = 0 red = 0 for string in strs: if string == "red": strs[blue] = "blue" blue += 1 strs[green] = "green" green += 1 strs[red] = "red" red += 1 elif string == "green": strs[blue] = "blue" blue += 1 strs[green] = "green" green += 1 elif string == "blue": strs[blue] = "blue" blue += 1 return strs ob = Solution() colors = ["blue","green", "blue", "red", "red"] print(ob.solve(colors))
入力
["blue","green", "blue", "red", "red"]
出力
['red', 'red', 'green', 'blue', 'blue']
-
リストの累積合計を見つけるPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −リストが与えられたので、累積合計でリストを作成する必要があります。 次に、以下の実装のソリューションを見てみましょう- 例 # cumulative sum def Cumulative(l): new = [] cumsum = 0 for element in l: cumsum += element new.append(cumsum) &
-
リストを複製またはコピーするPythonプログラム。
このプログラムでは、ユーザー入力リストが与えられています。私たちの仕事は、リストをコピーまたは複製することです。ここでは、スライス手法を使用します。この手法では、参照とともにリスト自体のコピーを作成します。このプロセスはクローン作成とも呼ばれます。 アルゴリズム Step 1: Input elements of the array. Step 2: then do cloning using slicing operator(:). サンプルコード # Python program to copy or clone a list # Using the Slice Operator