题解 | #颜色分类#

看了大家的题解,找了一个看似最简单的翻译成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


全部评论

相关推荐

比亚迪汽车新技术研究院 硬件工程师 总包21左右 硕士
点赞 评论 收藏
分享
11-08 16:53
门头沟学院 C++
投票
滑模小马达:第三个如果是qfqc感觉还行,我签的qfkj搞电机的,违约金也很高,但公司感觉还可以,听说之前开过一个试用转正的应届生,仅供参考。
点赞 评论 收藏
分享
11-18 15:57
门头沟学院 Java
最终归宿是测开:这个重邮的大佬在重邮很有名的,他就喜欢打92的脸,越有人质疑他,他越觉得爽😂
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务