`
itoracja
  • 浏览: 136125 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

一个快速排序程序

    博客分类:
  • java
阅读更多
    无意中看到一个游戏中有着快速排序的源代码,备份下
import java.util.comparator;public class quicksorter<type> extends sorter<type> {    public void sort(type[] array, int count, comparator<type> comparator) {        quicksort(array, 0, count - 1, comparator);    }                 // quicksort a[left] to a[right]    public void quicksort(type[] a, int left, int right, comparator<type> comparator) {        if (right <= left) return;        int i = partition(a, left, right, comparator);        quicksort(a, left, i - 1, comparator);        quicksort(a, i + 1, right, comparator);    }           // partition a[left] to a[right], assumes left < right    private int partition(type[] a, int left, int right, comparator<type> comparator) {        int i = left - 1;        int j = right;        while (true) {            while (comparator.compare(a[++i], a[right]) < 0) {     // find item on left to swap            }                              // a[right] acts as sentinel            while (comparator.compare(a[right], a[--j]) < 0) {    // find item on right to swap                if (j == left) {                     break;                 // don't go out-of-bounds                }            }            if (i >= j) {                break;                     // check if pointers cross            }            type swap = a[i];                 // swap two elements into place            a[i] = a[j];            a[j] = swap;        }        type swap = a[i]; // swap with partition element        a[i] = a[right];        a[right] = swap;        return i;    }}
 
0
1
分享到:
评论

相关推荐

    基于python实现的快速排序程序源码

    基于python实现的快速排序程序源码基于python实现的快速排序程序源码基于python实现的快速排序程序源码基于python实现的快速排序程序源码基于python实现的快速排序程序源码基于python实现的快速排序程序源码基于...

    java 快速排序程序

    java 编写的快速排序程序递归形式我做的课堂作业,,希望能帮助大家。。。

    快速排序C#程序

    快速排序, c#开发 算法设计与分析程序 算法导论两个程序

    快速排序法 程序 绝对原创

    快速排序法 程序 绝对原创 老师布置的作业 欢迎大家下载

    快速排序程序

    快速排序小程序,体现快速排序的思想,希望和大家探讨学习

    快速排序的C语言实现

    用c++写的一个快速排序程序的实现,程序简洁,可以直接用在C语言上

    快速排序源程序(C++实现)

    参照Sartaj Sahni所著的,Algorithms, and Applications in c++&gt;&gt;提供的代码,完成一个在VC++ 2010环境下调试通过的快速排序源程序。 代码非常简洁,十几行, 注释丰富,一看就懂,同时提供随机生成1000个整数为样例...

    快速排序算法C语言程序.zip

    快速排序算法C语言程序,快速排序算法和冒泡排序法类似,都是基于交换排序思想,但是快速排序算法对冒泡排序算法进行改进,从而使其具有更高的执行效率。

    快速排序的c程序

    快 速 排 序 的 c 语 言 程 序

    快速排序图形界面演示程序

    使用GUI实现快速排序图形界面效果,演示快速排序的基本思想。

    7大排序算法实现程序(快速排序,冒泡排序,选择排序,归并排序,插入排序,希尔排序,堆排序)

    7大排序算法(快速排序,冒泡排序,选择排序,归并排序,插入排序,希尔排序,堆排序)实现源码

    C++快速排序算法程序

    C++快速排序算法程序,用于处理大量数据, 并对这些数据进行快速的排序

    快速排序算法程序

    c++算法实现窗口选择txt文件,对内容进行快速排序,可选择多个文件进行排序,快速排序采用的方法是左右指针法,但是没有对选择的初始值进行优化,还是比较初级的版本,有优化的空间

    归并和快速排序c程序实现

    归并算法和快速排序算法,归并中考虑了归并的分解,不要归并的1,当小于分界是用简单排序实现

    C语言冒泡/插入/快速排序程序

    冒泡/插入/快速排序 C程序。分别给出了冒泡排序,插入排序,快速排序算法的C语言程序,实测过,程序可运行

    c++模板类实现快速排序

    用模板类实现的一个简易的c++程序,实现了快速排序。

    一个快速排序的实现例程

    用erlang语言实现的快速排序程序,简洁明了,能立即理解快速排序的核心思想

    C++实现快速排序

    3)运行快速排序程序对所生成元素进行排序,要求将元素的初始输入序列和 排序后的结果序列都输出在一个文件中。 4)对相同的待排序元素数,要求程序运行 10 次,将每次排序所进行的元素 比较次数和平均比较次数输出...

    一个负责排序的程序包,实现多种排序算法

    设计一个负责排序的程序包,实现多种排序算法,至少包括插入排序、冒泡排序和快速排序算法。 要求: 1.可以对任何简单类型和任意对象进行排序 2.可以支持升序、降序、字典排序等多种顺序要求 3.可以随意增加排序算法...

    数据结构 快速排序 输出每一趟结果

    用函数实现快速排序,并输出每次分区后排序的结果 Input 第一行:键盘输入待排序关键的个数n 第二行:输入n个待排序关键字,用空格分隔数据 Output 每行输出每趟排序的结果,数据之间用一个空格分隔 Sample Input ...

Global site tag (gtag.js) - Google Analytics