专栏首页cwl_Java数据结构与算法-快速排序算法

数据结构与算法-快速排序算法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/103106305

代码示例
package com.cwl.arithmetic;

/**
 * @program: data-structure
 * @description: 快速排序
 * @author: ChenWenLong
 * @create: 2019-11-15 10:32
 **/
public class QuickSort {

    /**
     * 功能描述:
     * 〈对指定数组进行分割〉
     *
     * @params : [a, p, r]
     * @return : int
     * @author : cwl
     * @date : 2019/11/15 9:42
     */
    private static int partitionInt(int a[],int p,int r){
        int x = a[r-1];
        int i = p - 1;
        int temp;
        for(int j=p;j<=r-1;j++){
            if(a[j-1]<=x){
                i++;
                temp = a[j-1];
                a[j-1] = a[i-1];
                a[i-1] = temp;
            }
        }
        temp = a[r-1];
        a[r-1] = a[i];
        a[i] = temp;
        return i+1;
    }

    /**
     * 功能描述:
     * 〈快速排序方法〉
     *
     * @params : [a, p, r]
     * @return : void
     * @author : cwl
     * @date : 2019/11/15 9:42
     */
    public static void quickSortInt(int a[],int p,int r){
        if(p < r){
            int q = partitionInt(a, p, r);
            quickSortInt(a, p, q-1);
            quickSortInt(a, q+1, r);
        }
    }
}

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java工具集-支持各种类型快速排序工具

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    cwl_java
  • 经典笔试题-JAVA实现快速排序算法

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    cwl_java
  • Java基础-标识符Identifier

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    cwl_java
  • POJ 刷题系列:2002. Squares

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.n...

    用户1147447
  • 挑战程序竞赛系列(82):4.3 LCA(2)

    挑战程序竞赛系列(82):4.3 LCA(2) 传送门:POJ 1986: Distance Queries 题意: LCA距离:快速查询树中任意两个节点间...

    用户1147447
  • Antenna Placement

    思路: 看了discuss,咋有那么多人纠结无向图和有向图的区别。而且我也并没有理解所谓的答案: 顶点数 - 最大匹配数 / 2,说说我的思路吧。首先在二维...

    用户1147447
  • 1062. 昂贵的聘礼

    思路: 实际上是一个图模型,采用递归,物品之间的交换有一条关系边,比如国王需要物品2,那么可以用8000来交换,此时子问题就变成了从物品2出发,所需要的最少...

    用户1147447
  • 4.7后缀数组

    第一次接触后缀数组,采用《挑战》P378的后缀算法,时间复杂度为O(nlog2n)O(n\log^2n),基本思想如下:

    用户1147447
  • 短视频APP制作,设置高斯模糊

    yunbaokeji柯基
  • 复习C艹(更新中)

    之前在win7中运行c/c++下个vc就可以编译运行了,现在换了Mac,上网一看需要下个xcode,哎哟,好大啊,当时又没网,捉急,咦,mac的终端可以编译cp...

    仇诺伊

扫码关注云+社区

领取腾讯云代金券