Java基础(45):冒泡排序的Java封装(完整可运行)
1.冒泡排序
package lsg.ap.bubble; import java.util.*; public class BubbleSort { public static void bubbleSort(int[] array) { int temp; // 第一层循环: 表明要比较的次数,即需要比较多少轮 //第二层循环:每个元素依次与每轮的第一个元素(i指示的元素,i会每轮 //递增1,要注意这点)进行比较,每一轮都把最大的元素冒泡到顶部 for(int i=0;i<array.length;i++) { for(int j=0;j<array.length-1-i;j++) { if(array[i]>array[j]) { temp=array[i]; array[i]=array[j]; array[j]=temp; } } } } /** * * 输出相应数组的结果 * @param array */ private static void printArray(int[] array) { for(int value:array) { System.out.print(" "+value+" "); } System.out.println(); } public static void main(String[] args) { //小数据量的测试 int[] array=new int[]{3,44,38,5,47}; //下面是大数据量的测试。这样才能看出不同算法的优劣 Random random=new Random(); int[] array2=new int[2000]; for(int j=0;j<2000;j++) { array2[j]=random.nextInt(100000); } System.out.println("排序前数组元素为:"); printArray(array); long dateStart=System.nanoTime(); bubbleSort(array); long dateEnd= System.nanoTime(); long totalTime=dateEnd-dateStart; System.out.println("冒泡排序的时间复杂度为:"); System.out.println(totalTime+"纳秒"); System.out.println("排序后数组元素为:"); printArray(array); } }
Java基础(45):冒泡排序的Java封装(完整可运行)的更多相关文章
- Java基础-面向对象第一特性之封装(Encapsulation)
Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...
- Java基础系列1:Java基本类型与封装类型
Java基础系列1:Java基本类型与封装类型 当初学习计算机的时候,教科书中对程序的定义是:程序=数据结构+算法,Java基础系列第一篇就聊聊Java中的数据类型. 本篇聊Java数据类型主要包括两 ...
- 【Java基础】11、java方法中只有值传递,没有引用传递
public class Example { String testString = new String("good"); char[] testCharArray = {'a' ...
- 【Java基础】4、java中的内部类
内部类的分类:常规内部类.静态内部类.私有内部类.局部内部类.匿名内部类. 实例1:常规内部类 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 ...
- 夯实Java基础系列1:Java面向对象三大特性(基础篇)
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 [https://github.com/h2pl/Java-Tutorial](https: ...
- 夯实Java基础系列5:Java文件和Java包结构
目录 Java中的包概念 包的作用 package 的目录结构 设置 CLASSPATH 系统变量 常用jar包 java软件包的类型 dt.jar rt.jar *.java文件的奥秘 *.Java ...
- Java基础系列1:Java面向对象
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 概述: Java是面 ...
- java基础学习03(java基础程序设计)
java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和con ...
- java基础3.0:Java常用API
本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...
随机推荐
- 【转】全面解析Unity3D自动生成的脚本工程文件
http://blog.csdn.net/jjiss318/article/details/7632041 我们在Unity3D开发的时候,经常会看到它会产生不少固定命名工程文件,诸如: Assemb ...
- 怎么样用opencv将彩色图片转化成像素值只有0和255的灰度图?
分类: OpenCV [Q1]怎么样用opencv将彩色图片转化成像素值只有0和255的灰度图? 进行灰度化,IplImage* pImg = cvLoadImage( "C:\\1.b ...
- CGROUP
二:cgroup中的概念在深入到cgroup的代码分析之前.先来了解一下cgroup中涉及到的几个概念:1:cgroup: 它的全称为control group.即一组进程的行为控制.比如,我们限制进 ...
- Nodejs电影建站开发实例(上)
网站环境:使用express框架.bootstrap样式.jade模板.mongoose数据库 npm insatll express -g npm insatll jada -g npm insat ...
- (leetcode)Summary Ranges
Given a sorted integer array without duplicates, return the summary of its ranges. For example, give ...
- php创建网站问题
网站在本地浏览的时候链接点击都提示The requested URL was not found on this server. 本地装的wamp,apache和php.ini都是好的 最后更改: 在 ...
- 史上最用心的iOS App上架流程【转】
转:http://www.jianshu.com/p/16fa56eacb5e 题记 麻痹起来嗨!看网上那么多的教程,依然在我心爱的爱屁屁在上架的时候遇到各种 J8 问题,最大的问题就是:Xcode ...
- Selenium2学习-019-WebUI自动化实战实例-017-获取浏览器类型
Web UI 自动化脚本分布执行过程中有时候需要获取浏览器的相关信息,此文给出了一个简略获取浏览器类型的方法,敬请各位小主们参阅.若有不足之处,敬请大神指正,不胜感激! 闲话少述,上码. /** * ...
- Sql server与Excel的数据互通导入导出
现在,我先从Sql server数据表导出到Excel中,再从Excel数据表导出到Sql server中: 一.Sql server数据表导出到Excel中: 1.新建一个Excel,选择“数据”菜 ...
- angularJs:动态效果之:显示与隐藏(该例对比了普通赋值,层次赋值,事件的写法对比)
testShowAndHiddern.html <!DOCTYPE html> <html ng-app="MyModule"> <head> ...