文档章节

快排class

带梦想一7飞
 带梦想一7飞
发布于 2014/01/10 14:52
字数 127
阅读 8
收藏 0

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;
 }

}

© 著作权归作者所有

带梦想一7飞
粉丝 19
博文 190
码字总数 99203
作品 0
朝阳
私信 提问
数组中出现频率为k次的元素 Top K Frequent Elements

问题: Given a non-empty array of integers, return the k most frequent elements. For example, Given and k = 2, return . Note: You may assume k is always valid, 1 ≤ k ≤ number......

叶枫啦啦
2017/12/26
19
0
快排 递归 非递归

我记得曾经 有一个大师说过这么一句话,大概的意思是说如果你懂得了编程,那么请你给我用非递归表达你的思想。我想非递归隐藏的东西恰恰应该是程序员应该注意的东西。因为递归的隐藏,让我们...

hyssop
2015/11/29
328
0
快排以及基于快排思想的topk 一锅端demo

算法不好,补补基本的排序算法,弄懂了快排,发现topK问题中也能用快排的思想所以写了一个demo 填坑解释法解释快排很形象,我是看这篇看懂快排的,这里推荐一下 http://blog.csdn.net/chengqi...

霁雪清虹
2017/11/10
0
0
O(n*logn)级别的算法之二(快速排序)的三种实现方法详解及其与归并排序的对比

一,单路快排 1.测试用例: 1 #ifndef INC06QUICKSORTDEALWITHNEARLYORDEREDARRAYSORTTESTHELPERH 2 #define INC06QUICKSORTDEALWITHNEARLYORDEREDARRAYSORTTESTHELPERH 3 #include 4 #incl......

Tom-shushu
2018/11/19
0
0
快速排序---quick sort

快排应该是平时使用的最多的一种排序了,这里实现的快排是一种未经改良的简单快排。 快排的思想是,使用二分法找到一个中间基准值,然后将序列分成小于和大于两部分,对这两部分再分别进行快...

shadowalker1990
2014/02/26
45
0

没有更多内容

加载失败,请刷新页面

加载更多

Replugin借助“UI进程”来快速释放Dex

public static boolean preload(PluginInfo pi) { if (pi == null) { return false; } // 借助“UI进程”来快速释放Dex(见PluginFastInstallProviderProxy的说明) return PluginFastInsta......

Gemini-Lin
48分钟前
4
0
Hibernate 5 的模块/包(modules/artifacts)

Hibernate 的功能被拆分成一系列的模块/包(modules/artifacts),其目的是为了对依赖进行独立(模块化)。 模块名称 说明 hibernate-core 这个是 Hibernate 的主要(main (core))模块。定义...

honeymoose
今天
4
0
CSS--属性

一、溢出 当内容多,元素区域小的时候,就会产生溢出效果,默认是纵向溢出 横向溢出:在内容和容器之间再套一层容器,并且内部容器要比外部容器宽 属性:overflow/overflow-x/overflow-y 取值...

wytao1995
今天
4
0
精华帖

第一章 jQuery简介 jQuery是一个JavaScript库 jQuery具备简洁的语法和跨平台的兼容性 简化了JavaScript的操作。 在页面中引入jQuery jQuery是一个JavaScript脚本库,不需要特别的安装,只需要...

流川偑
今天
7
0
语音对话英语翻译在线翻译成中文哪个方法好用

想要进行将中文翻译成英文,或者将英文翻译成中文的操作,其实有一个非常简单的工具就能够帮助完成将语音进行翻译转换的软件。 在应用市场或者百度手机助手等各大应用渠道里面就能够找到一款...

401恶户
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部