博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
快排class
阅读量:6827 次
发布时间:2019-06-26

本文共 850 字,大约阅读时间需要 2 分钟。

hot3.png

public class SpeedSort {

 private int[] a;

 public void sort() {

  int begin = 0;
  int end = a.length - 1;
  quickSort(begin, end);
  for (int i : a) {
   System.out.print(i + " ");
  }
 }

 private void quickSort(int begin, int end) {

  if (begin >= end) {

  } else {

   int pivot = a[end];
   int result = getPivot(begin, end, pivot);
   quickSort(begin, result - 1);
   quickSort(result + 1, end);
  }

 }

 private int getPivot(int begin, int end, int pivot) {

  begin = begin - 1;
  int o = end;
  while (true) {
   while (a[++begin] < pivot) {

   }

   while (end > 0 && a[--end] > pivot) {

   }

   if (begin >= end) {
    break;
   } else {
    swap(begin, end);
   }
  }
  swap(begin, o);
  return begin;
 }

 private void swap(int begin, int end) {

  int t = a[begin];
  a[begin] = a[end];
  a[end] = t;
 }

 public int[] getA() {

  return a;
 }

 public void setA(int[] a) {

  this.a = a;
 }

}

转载于:https://my.oschina.net/u/573470/blog/192024

你可能感兴趣的文章
艾科 驱动电路分析
查看>>
洛谷3794:签到题IV——题解
查看>>
CF Round #426 (Div. 2) The Useless Toy 思维 水题
查看>>
spring 注解
查看>>
C#获取DLL、程序路径,C#获取桌面、收藏夹等特殊系统路径
查看>>
【08】node 之 fs文件
查看>>
[01] radio ,checkbox 表单文字对齐
查看>>
解决wget下载文件名乱码的一些方法
查看>>
Python--day68--Django ORM的字段参数、元信息
查看>>
Python--day30--互联网协议与osi模型
查看>>
Python--day37--多进程中的方法join()
查看>>
PyQt4软件打包成exe文件
查看>>
【Foreign】冒泡排序 [暴力]
查看>>
C#调用LUA函数
查看>>
U3D的结构体堆分配栈分配
查看>>
react-router-redux
查看>>
Blue
查看>>
《转载》写的真好
查看>>
如何使用fiddler进行android手机测试
查看>>
Spring @Scheduled 在tomcat容器里面执行两次
查看>>