首页 > 编程语言 > 详细

高速排序(Java版)

时间:2017-06-29 21:28:30      阅读:178      评论:0      收藏:0      [点我收藏+]
package com.love.test;

import java.util.Scanner;


 /**
 * @author huowolf
 *高速排序实现
 *快排是十分优秀的排序算法。

*核心:分治法(1.选基元2.分区3.递归子列) */ public class QuickSort { public static void quickSort(int[] arr,int start ,int end) { if(start<end) { int i=start, j=end, x=arr[start];//基元 while(i<j) { //从右向左扫描小于x的数 while(i<j && arr[j]>=x) j--; if(i<j) arr[i++]=arr[j]; //从左向右扫描大于x的数 while(i<j && arr[i]<=x) i++; if(i<j) arr[j--]=arr[i]; } arr[i]=x;//在最后一个位置中填入基准数 quickSort(arr, start, end-1);//递归 quickSort(arr, start+1, end); } } public static void main(String[] args) { int[] arr = new int [10]; System.out.println("请依次输入十个整数:"); Scanner s = new Scanner(System.in); for(int i=0;i<10;i++) { arr[i] = s.nextInt(); } System.out.println("排序前的顺序为:"); for(int i=0;i<10;i++) { System.out.print(arr[i]+" "); } quickSort(arr, 0, arr.length-1); System.out.println("\n排序后的顺序为:"); for(int i=0;i<10;i++) { System.out.print(arr[i]+" "); } } }

參考一位大牛的博文,讲的非常好,博文地址:http://blog.csdn.net/morewindows/article/details/6684558

加油,自己!!

高速排序(Java版)

原文:http://www.cnblogs.com/yangykaifa/p/7096183.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!