用 Python 编写的分割颜色列表的程序
pythonserver side programmingprogramming更新于 2026/1/19 10:20:17
假设我们有一个颜色字符串列表,这些字符串可能包含"红色"、"绿色"和"蓝色",我们必须对列表进行分区,以便红色在绿色之前,绿色在蓝色之前。
因此,如果输入为 colors = ["blue","green","blue","red","red"],则输出将是 ['red',&39;red',&39;green',&39;blue',&39;blue']
为了解决这个问题,我们将遵循以下步骤 −
green := 0, blue := 0, red := 0
对于 strs 中的每个字符串,执行
如果字符串与"red",则
strs[blue] := "blue"
blue := blue + 1
strs[green] := "green"
green := green + 1
strs[red] := "red"
red := red + 1
否则,当字符串与 "green" 相同时,则
strs[blue] := "blue"
blue := blue + 1
strs[green] := "green"
green := green + 1
否则,当字符串与 "blue" 相同时,则
strs[blue] := "blue"
blue := blue + 1
return 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 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

