栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA 快速排序

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA 快速排序

不多bb,直接上代码,代码里有解释

代码如下:

在这里插入代码片
```package cd.edu.aiai;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class QuickSort {
    public static void main(String[] args) throws IOException {
        
        int[] arr = {2,4,3,5,7,6};
        Quic_Sort(arr,0,arr.length-1);
        for ( int i = 0; i < arr.length; i++){
            System.out.print(arr[i]+" ");
        }

    }

    private static void Quic_Sort(int[] arr, int l, int r) {
      if(l > r ) return ;
        int x = arr[l];
        int i = l;
        int j = r;

        while (i < j){
//            do i++ ; while (arr[i] < x);
//            do j--; while (arr[j] > x);
         while (x <= arr[j] && j > i) j--;
         while (x >= arr[i] && j > i) i++;
         if(i < j){
             int t = arr[i];
             arr[i] = arr[j];
             arr[j] = t;
         }
        }
        //实现最后i和j相等于基准的数进行交换
        arr[l] = arr[i];
        arr[i] = x;
        //递归实现左半部分的排序
        Quic_Sort(arr,l,j-1);
        //递归实现右半部分的排序
        Quic_Sort(arr,j+1,r);

    }
}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/979326.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号