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

快速排序实例

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

快速排序实例

简单实现快速排序,注释在代码里面已经写好了,比较容易理解,直接上代码。

package com.mrz.test;



public class QuickSort {

	public static void main(String[] args) {
		int[] arr = {6,9,5,7,4};
		Quick(arr, 0, arr.length-1);
		for(int i = 0;i < arr.length;i++) {
			System.out.println(arr[i]);
		}
	}
	
	public static void Quick(int[] arr,int L,int R) {
		if(L>=R)
			return ;
		int left=L,right=R;
		int pivot = arr[left];			//设置中心轴
		while(left=pivot) {			//左下标小于右边下标,数组右侧下标值大于等于中心轴,则右侧下标自减
				right--;
			}
			if(left=right) {			//如果左下标大于等于右下标,则说明排序结束,也就是已经把中心轴分好了,左边是小于中心轴的值,右边是大于中心轴的值
				arr[left]=pivot;		//将中心轴赋值给左下标(或右下边)位置
			}
		}
		Quick(arr,L,right-1);		//用递归分别对左侧值进行排序,需要注意的是别把这里的两个方法写到上面的while循环里面了
		Quick(arr, right+1, R);		//用递归对右侧值进行排序
	}
	
	
}

如果还是不懂可以私信我或者看下下面的视频,个人觉得比较容易理解

快速排序算法_哔哩哔哩_bilibili

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

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

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