本文实例讲述了JAVA快速排序实现方法。分享给大家供大家参考,具体如下:
package com.ethan.sort.java;
import java.util.Arrays;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class QuickSort {
public static <E extends Comparable<? super E>> List<E> quickSort(List<E> arr) {
if(arr.size()<=1) {
return arr;
}
E pivot = arr.get(0);
//每次递归都会初始化,每次list都不一样
List<E> less = new LinkedList<E>();
//枢轴,这个集合只有一个元素,每次都初始化,都不一样
List<E> pivotList = new LinkedList<E>();
List<E> more = new LinkedList<E>();
for(E i:arr){
if(i.compareTo(pivot)<0) {
less.add(i);
} else if(i.compareTo(pivot)>0) {
more.add(i);
} else {
pivotList.add(i);
//System.out.println("p---->"+i);
}
}
//递归
less = quickSort(less);//比pivot小的
//又进行quicksort,对more,再分成两部分
more = quickSort(more);
//拼接 less pivot more
less.addAll(pivotList);
//pv-------->[23],到最后只有一个元素了
System.out.println("pv-------->"+pivotList);
less.addAll(more);
return less;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Integer[] arr = {23,2,8,43,22,32,4,5,34};
List l = quickSort(Arrays.asList(arr));
Iterator i = l.iterator();
while(i.hasNext()) {
System.out.println(i.next());
}
}
}
希望本文所述对大家java程序设计有所帮助。
# JAVA
# 排序算法
# 快速排序
# 图解Java排序算法之快速排序的三数取中法
# java 排序算法之快速排序
# JAVA十大排序算法之快速排序详解
# 详解Java双轴快速排序算法
# Java实现快速排序算法的完整示例
# 快速排序算法在Java中的实现
# Java深入浅出理解快速排序以及优化方式
# 递归
# 都不
# 只有一个
# 给大家
# 每次都
# 所述
# 两部分
# 程序设计
# 讲述了
# static
# lt
# extends
# QuickSort
# LinkedList
# List
# public
相关文章:
专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在阿里云部署织梦网站?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
免费公司网站制作软件,如何申请免费主页空间做自己的网站?
建站主机数据库如何配置才能提升网站性能?
建站主机系统SEO优化与智能配置核心关键词操作指南
沈阳制作网站公司排名,沈阳装饰协会官方网站?
如何快速打造个性化非模板自助建站?
微信推文制作网站有哪些,怎么做微信推文,急?
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
用v-html解决Vue.js渲染中html标签不被解析的问题
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
宝塔新建站点报错如何解决?
如何正确选择百度移动适配建站域名?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
北京网站制作网页,网站升级改版需要多久?
如何优化Golang Web性能_Golang HTTP服务器性能提升方法
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
家庭服务器如何搭建个人网站?
潮流网站制作头像软件下载,适合母子的网名有哪些?
大连网站制作公司哪家好一点,大连买房网站哪个好?
制作销售网站教学视频,销售网站有哪些?
高防服务器租用指南:配置选择与快速部署攻略
如何快速生成橙子建站落地页链接?
C++如何使用std::optional?(处理可选值)
威客平台建站流程解析:高效搭建教程与设计优化方案
南平网站制作公司,2025年南平市事业单位报名时间?
内部网站制作流程,如何建立公司内部网站?
广州顶尖建站服务:企业官网建设与SEO优化一体化方案
制作表格网站有哪些,线上表格怎么弄?
如何通过万网虚拟主机快速搭建网站?
如何在IIS管理器中快速创建并配置网站?
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
如何在宝塔面板创建新站点?
平台云上自助建站如何快速打造专业网站?
如何在万网开始建站?分步指南解析
如何高效配置香港服务器实现快速建站?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
个人摄影网站制作流程,摄影爱好者都去什么网站?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
如何快速搭建响应式可视化网站?
北京营销型网站制作公司,可以用python做一个营销推广网站吗?
昆明高端网站制作公司,昆明公租房申请网上登录入口?
公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
家庭建站与云服务器建站,如何选择更优?
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
*请认真填写需求信息,我们会在24小时内与您取得联系。