首先是冒泡排序
import java.util.Random; public class BubbleSort { private static int score[] = new int[50000]; static { for (int i = 0; i < score.length - 1; i++) { Random r = new Random(); score[i] = r.nextInt(100); } } /** * @param args */ public static void main(String[] args) { long start = System.currentTimeMillis(); for (int i = 0; i < score.length - 1; i++) { for (int j = 0; j < score.length - i - 1; j++) { if (score[j] > score[j + 1]) { int tmp = score[j]; score[j] = score[j + 1]; score[j + 1] = tmp; } } } for (int a = 0; a < score.length; a++) { System.out.print(score[a] + "\t"); } System.out.println(""); System.out.println(System.currentTimeMillis() - start); } }
执行结果,处理了 7351毫秒
快速排序:
import java.util.Random; public class QuickSort { private static int score[] = new int[50000]; static { for (int i = 0; i < score.length - 1; i++) { Random r = new Random(); score[i] = r.nextInt(100); } } public static void main(String[] args) { long start = System.currentTimeMillis(); quickSort(score, 0, score.length - 1); for (int i : score) { System.out.print(i + "\t"); } System.out.println(""); System.out.println(System.currentTimeMillis() - start); } public static void quickSort(int[] datas, int low, int high) { if (low < high) { int middle = getMiddle(datas, low, high); quickSort(datas, low, middle - 1); quickSort(datas, middle + 1, high); } } public static int getMiddle(int[] datas, int low, int high) { int tmp = datas[low]; while (low < high) { while (low < high && tmp <= datas[high]) { high--; } datas[low] = datas[high]; while (low < high && tmp >= datas[low]) { low++; } datas[high] = datas[low]; } datas[low] = tmp; return low; } }
执行结果看 仅仅消耗 147毫秒
相关推荐
(1) 冒泡排序和快速排序; (2) 插入排序和希尔排序; (3) 选择排序和堆排序; (4) 递归和非递归的归并排序。 2. 产生不同规模和分布的数据,以 Excel 生成算法执行时间 T(n)关于输入规模 n 的曲线的形式,...
冒泡排序和快速排序的时间性能比较 冒泡排序和快速排序的时间性能比较 冒泡排序和快速排序的时间性能比较 冒泡排序和快速排序的时间性能比较
13-冒泡排序与快速排序.cpp
#include #include class Array{ public: Array(int Size=150);//构造函数 ~Array() {delete[]T;}// 析构函数 //取数组长度 int qdivde(int low,int high); void print(); void exchange(int i,int j);...
数据结构(c语言版)严蔚敏 吴伟民编著 中直接插入排序、折半排序、shell排序、冒泡排序、快速排序、选择排序、堆排序的实现、归并排序,使用c语言实现
选择排序、插入排序、冒泡排序以及快速排序和归并排序的C语言实现,绝对可用
冒泡排序和快速排序的时间性能 冒泡排序和快速排序的时间性能 冒泡排序和快速排序的时间性能 冒泡排序和快速排序的时间性能 冒泡排序和快速排序的时间性能
合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序的C语言实现,原创。
直接插入排序 选择排序 堆排序 归并排序 快速排序 冒泡排序等七种排序方法
直接插入排序 冒泡排序 快速排序 直接选择排序 堆排序 二路归并排序 C#源代码 使用C#实现的数据结构中的排序算法
Java语言实现冒泡排序和快速排序的交互动画,是我的课程设计,内附文档ppt以及源码,可以直接运行。利用javafx中的柱状图进行实现。
JAVA排序算法: 直接插入,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序,包括算法的详细介绍,以及对几种算法的详细测试
输入同样一组数据,比较直接插入排序、冒泡排序、快速排序这三种排序算法的关键字的比较次数和数据移动次数。
php 冒泡排序 快速排序 排序
C# 常用经典算法,选择排序 冒泡排序 快速排序 插入排序 希尔排序
插入排序、冒泡排序、归并排序、快速排序四种排序方式的C++实现,各写成了一个函数,主函数中可以选择调用那一个。初始化数组时用的是随机种子srand((int)time(0))。在宏中定义数组大小。
JAVA冒泡排序和快速排序算法,符合实验报告要求哦
排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序.mht
冒泡排序,选择排序,插入排序,希尔排序,堆排序,归并排序,快速排序源码实现,里面有详细讲解,对新手应该有帮助
六种内部排序算法比较:直接插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序。包含实验报告和源代码设计。