快排 python3

Class Solution:
    def QuickSort(self, array, low, high):
        if low >= high:
            return
        i = low, j = high, index = array[i]    #取数组最左侧数值作为基准
        while(i<j):
            while((i<j) and (array[j] >= index)):    #从右向左寻找第一个小于基准的数值
                j -= 1
            if i<j:
                array[i] = array[j]    #将该值填到左侧,i值右移【右侧该值位置空出】
                i +=1
            while((i<j) and (array[i] < index):    #继续从左向右寻找第一个大于基准的数值
                i += 1
            if i<j:
                array[j] = array[i]    #将该值填到右侧空位,j值左移【左侧该值位置空出】
                j -=1
        array[i] = index    #将基准值填入中间空位
        QuickSort(array,low,i-1)    #分治、迭代实现
        QuickSort(array,i+1,high)
            
全部评论

相关推荐

Java抽象带篮子:简历怎么写可以看看我发的帖子,你的第一个是实习经历吗?那怎么写的是你的第一个练手项目呢?简历写的怎么样直接投小厂面试一下就知道了
没有实习经历,还有机会进...
点赞 评论 收藏
分享
06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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