专栏首页学习日记Leetcode Golang 75. Sort Colors.go

Leetcode Golang 75. Sort Colors.go

版权声明:原创勿转 https://blog.csdn.net/anakinsun/article/details/88916131

思路

暴力循环

code

func swap(nums []int, i, j int) {
	tmp := nums[i]
	nums[i] = nums[j]
	nums[j] = tmp
}
func sortColors(nums []int) {
	l, i, r := 0, 0, len(nums)-1
	for i <= r {
		if nums[i] == 0 {
			swap(nums, i, l)
			i++
			l++
		} else {
			if nums[i] == 1 {
				i++
			} else {
				swap(nums, i, r)
				r--
			}

		}
	}
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Leetcde Golang 26. Remove Duplicates from Sorted Array.go

    版权声明:原创勿转 https://blog.csdn.net/anakinsun/article/details/88902453

    anakinsun
  • Leetcode Golang 18. 4Sum.go

    版权声明:原创勿转 https://blog.csdn.net/anakinsun/article/details/88935159

    anakinsun
  • Golang洗牌算法

    主要思路为每次随机挑选一个值,放在数组末尾。然后在n-1个元素的数组中再随机挑选一个值,放在数组末尾,以此类推。注意,一定要设置随机种子,否则每次返回的值是一样...

    anakinsun
  • python实现给定一个数和数组,求数组

    给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。

    py3study
  • 283 Move Zeroes

    /** * 题意:将0挪到末尾,并且不改数组中原有元素的顺序 * 解析:找到0元素,然后寻找其后面非0的元素,进行交换位置 * @param {numbe...

    用户1624346
  • Leetcode 15 三数之和(双指针,去重)

    给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三...

    glm233
  • Array - 508. Wiggle Sort

    Given an unsorted array nums, reorder it in-place such that

    用户5705150
  • Q189 Rotate Array

    Rotate an array of n elements to the right by k steps. For example, with n = 7 a...

    echobingo
  • 【剑指Offer】调整数组顺序使奇数位于偶数前面

    输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。

    小新哟
  • LeetCode-31-Next-Permutation

    这个排序主要是有两种情况,一个是类似于3 1 2这样的情况,直接从后往前找到第一个nums[i]<nums[i-1]的,然后把i记下来,再与后面第一个小于i的k...

    小二三不乌

扫码关注云+社区

领取腾讯云代金券