冒泡排序BubbleSort
2016-04-01 11:33
330 查看
/** * * @author Administrator * 功能:交换式排序之冒泡排序 */ package com.test1; import java.util.Calendar; public class BubbleSort { public static void main(String[] args) { // TODO Auto-generated method stub int[] arr = new int[50000]; for (int i = 0; i < arr.length; i++) { //让程序随机产生一个1 - 10000个数 //Math.random会产生一个0到1的数 arr[i] = (int)(Math.random()*50000); } //int[] arr = { 1, 6, 0, -1, 9, -100, -90 }; // 排序开始 // 外层循环,它可以决定一共走几趟 Bubble bubble = new Bubble(); //在排序前打印系统时间 //Calendar是单开模式,在系统里面只有一个,且只需要一个实例,不是new 出来的 //Java共有23中模式 Calendar cal = Calendar.getInstance(); System.out.println("排序前:"+cal.getTime()); bubble.sort(arr); //在排序后打印系统时间 //因为是单开的,所有首先重新得到实例 cal = Calendar.getInstance(); System.out.println("排序后:"+cal.getTime()); // System.out.println("冒泡结束后结果是:"); // for (int i = 0; i < arr.length; i++) { // System.out.print(arr[i] + " "); // } } } class Bubble { // 排序方法 public void sort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { // 内层循环,开始逐个比较,如果发现 // 前一个数比后一个数大,则交换 for (int j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } // //简单数据类型会开辟另一个栈,复合类型会改变 // public void swap(int a, int b) // { // if(a > b) // { // int temp = a; // a = b; // b = temp; // } // } } }
相关文章推荐
- 四则运算网页版
- java编程思想读书笔记三(11-21)
- IOS Animation-Sprite Kit(一)基础
- 语言的开始
- 【宝藏】题解(五校联考3day1)
- getClientRects 和 getBoundingClientRect 的用法和区别
- 如何在三个月内获得三年的工作经验(转载)
- 《开源安全运维平台-OSSIM最佳实践》喜获清华、北大、国家图书馆等国内一流大学图书馆收藏
- iOS 开发: 用户名、邮箱、电话号码、密码、昵称正则表达式验证
- js 排序
- Android Dalvik虚拟机初识
- Install Seafile Secure Cloud Storage on CentOS 7
- codeblocks 控制台一闪而过
- Android--Service完全解析,关于服务你所需知道的一切(上)
- HttpClient的一些参数设置(想到线程的朋友进)
- 选择排序SelectSort
- codeblocks 控制台一闪而过
- 《构建之法》第4章读后感
- 将war包部署到服务器的详细步骤
- jquery中attr和prop的区别