题解 | #颜色分类#

看了大家的题解,找了一个看似最简单的翻译成Python版本,结果发现这个思路并不简单,把while和if前后位置换一下, [1,2,0] 这个用例会运行失败

class Solution:
    def sortColor(self , colors: List[int]) -> List[int]:
        # write code here
        l = 0
        r = len(colors)-1
        for i in range(len(colors)):
            while i <= r and colors[i] == 2:
                temp = colors[r]
                colors[r] = colors[i]
                colors[i] = temp
                r -= 1
            if  colors[i] == 0:
                temp = colors[l]
                colors[l] = colors[i]
                colors[i] = temp
                l += 1                                    
        return colors


全部评论

相关推荐

zephory:内容太乱了,根本捕捉不到重点,指导你会的很多,但是看不到具体的强项 个人技能宜精不宜多 项目那块太繁琐了,面试官或者hr只想知道你在项目中看了啥以及具体的收益
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务