75.颜色分类(荷兰国旗问题)

把仅含0,1,2的数组排序,要求只遍历一遍

思路:三指针

class Solution(object):
    def sortColors(self, nums):
        """
        :type nums: List[int]
        :rtype: None Do not return anything, modify nums in-place instead.
        """
        l = 0
        r = len(nums)-1
        mid = 0
        while mid<=r:         
            if nums[mid] == 0:
                nums[mid],nums[l] = nums[l],nums[mid]
                l+=1
                mid+=1
            elif nums[mid]==1:
                mid+=1
            else:
                nums[r],nums[mid]=nums[mid],nums[r]
                r-=1
        return nums
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,270评论 0 4
  • 动态规划 111. 爬楼梯思路类似斐波那契数列注意考虑第 0 阶的特殊情况 272. 爬楼梯 II思路类似上题,只...
    6默默Welsh阅读 2,461评论 0 1
  • 一些概念 数据结构就是研究数据的逻辑结构和物理结构以及它们之间相互关系,并对这种结构定义相应的运算,而且确保经过这...
    Winterfell_Z阅读 5,994评论 0 13
  • 通过前面的知识,我们已经知道,有序的数据在查找时有极大的性能提升。很多查找都基于有序数据,但并不是所有的结构都能像...
    大大纸飞机阅读 1,192评论 0 1
  • 今天是2016年10月9日,星期天,农历九月初九,是中国的传统节日——重阳节。 重阳节呢,又叫做重九节、晒秋节、“...
    倩影微语阅读 317评论 0 3