易截截图软件、单文件、免安装、纯绿色、仅160KB

Java实现冒泡排序

自从上次写了二分法查找代码后突然打算好好学习一下数据结构.买了一本数据结构与算法......
 import java.util.Random;
/**
*
* @author leon.lee
*/
public class BubbleSort {
private int[] arrayData;
public void printArrayList(){
if (arrayData!=null){
for(int i:arrayData){
System.out.print(i+",");
}
System.out.println("");
}
}
private void swap(int x,int y){
int tempV = arrayData[x];
arrayData[x]=arrayData[y];
arrayData[y]=tempV;
}
public void sort(){
/*
* 如果为了效率则把swap方法直接写在代码里,并且不要使用currentValue和nextValue变量
* 如此写法只是为了让结构清晰,方便阅读
*/
for(int i=0;i<arrayData.length;i++){
for(int j=0;j<arrayData.length-i-1;j++){
int currentValue = arrayData[j];
int nextValue = arrayData[j+1];
if(currentValue>nextValue){
swap(j,j+1);
}
}
}
}
private void initData(){
Random r = new Random(System.currentTimeMillis());
for(int i=0;i<arrayData.length;i++){
arrayData[i]=r.nextInt(100);
}
}
public BubbleSort(int arraylength){
if(arraylength<1){
throw new ExceptionInInitializerError("您不能使用小于1的数字");
}else if(arraylength>100){
throw new ExceptionInInitializerError("您不能使用大于100的数字");
}
arrayData = new int[arraylength];
initData();
}
public static void main(String[] args) {
BubbleSort bs ;
try{
bs = new BubbleSort(50);
}catch(ExceptionInInitializerError e){
System.out.println(e.getMessage());
return;
}
bs.printArrayList();
bs.sort();
bs.printArrayList();
}
}
 run:
6,54,18,6,29,85


相关文档:

java 转义字符

Xml代码 \n 回车(\u000a)   \t 水平制表符(\u0009)   \b 空格(\u0008)   \r 换行(\u000d)   \f 换页(\u000c)   \' 单引号(\u0027)   \" 双引号(\u0022)   \\ 反斜杠(\u005c)   \ddd 三位八进制 ......

传智播客JAVA培训OA项目 审批流转模块


传智播客JAVA培训OA项目 审批流转模块(未)
做工作,做技术,最主要的就是有一种专研的功能,特别是在学习的初期阶段也很重要,因为,老师永远不可能把所有的知识交给你,就像,你被你母亲生了下来,他手把手的教会了你走路,但是人生的路却是要你自己去走的一样。往日的学校,也仅仅是教会了你做人的道理,或者是学 ......

传智博客java培训 javaweb基础之编码

一直以来,java对于我都是新事物,对于新事物的接受方式也一直习惯从浅入深,循序渐进。
但是今天,张孝详老师给我们上了生动的一课,一个程序员最重要的能力就是学习能力,因为
计算机领域的技术其更新超快,目前所掌握的知识很有可能短时间内会被淘汰,而且会出现更好
更简洁的语言,那么该怎么去掌握呢。张老师认为, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号