LeetCode 打卡 Day 36 —— 颜色分类

1、题目

LeetCode 打卡 Day 36 —— 颜色分类_第1张图片2、题解

看到题目中说不能使用库中的sort函数,所以突发奇想决定自己实现快排序试试,顺便回忆快排,谁能想到还踩了不少坑,具体快排算法就不粘贴了,网上好多,我的代码如下。

func sortColors(nums []int)  {
    qsort(nums, 0, len(nums)-1)
    return
}

func qsort(arr []int, start, end int) {
    // fmt.Println("----")
    // fmt.Println(arr)
    if end <= start{
        return
    }
    povit := partition(arr, start, end)
    qsort(arr, start, povit-1)
    qsort(arr, povit+1, end)
}

func partition(arr []int, start, end int) int {
    i:=start
    povit:=arr[start]
    for start=povit {
            end--
        }
        for start

提交结果

LeetCode 打卡 Day 36 —— 颜色分类_第2张图片

你可能感兴趣的:(Go,leetcode)