Java实现冒泡排序算法
2016-03-07 13:01
288 查看
一、基本思路:
冒泡排序是一种简单的交换类排序。其基本思路是,从头开始扫描待排序的元素,在扫描过程中依次对相邻元素进行比较,将关键字值大的元素后移。每经过一趟排序后,关键字值最大的元素将移到末尾,此时记下该元素的位置,下一趟排序只需要比较到此位置为止,直到所有元素都已有序排列。
一般地,对n个元素进行冒泡排序,总共需要进行n-1趟。第1趟需要比较n-1次,第2趟需要比较n-2次,......第i趟需要比较n-i次。
二、算法实现
public class BubbleSort{
public static void main(String args[]){
int[] values={3,1,6,2,9,0,7,4,5};
sort(values);
for(int i=0;i<values.length;i++){//排序后打印数组中的元素
System.out.println("Index: "+i+" value: "+values[i]);
}
}
public static void sort(int[] values){
int temp;
for(int i=0;i<values.length;i++){//趟数
for(int j=0;j<values.length-i-1;j++){//比较次数
if(values[j]>values[j+1]){
temp=values[j];
values[j]=values[j+1];
values[j+1]=temp;
}
}
}
}
}
冒泡排序是一种简单的交换类排序。其基本思路是,从头开始扫描待排序的元素,在扫描过程中依次对相邻元素进行比较,将关键字值大的元素后移。每经过一趟排序后,关键字值最大的元素将移到末尾,此时记下该元素的位置,下一趟排序只需要比较到此位置为止,直到所有元素都已有序排列。
一般地,对n个元素进行冒泡排序,总共需要进行n-1趟。第1趟需要比较n-1次,第2趟需要比较n-2次,......第i趟需要比较n-i次。
二、算法实现
public class BubbleSort{
public static void main(String args[]){
int[] values={3,1,6,2,9,0,7,4,5};
sort(values);
for(int i=0;i<values.length;i++){//排序后打印数组中的元素
System.out.println("Index: "+i+" value: "+values[i]);
}
}
public static void sort(int[] values){
int temp;
for(int i=0;i<values.length;i++){//趟数
for(int j=0;j<values.length-i-1;j++){//比较次数
if(values[j]>values[j+1]){
temp=values[j];
values[j]=values[j+1];
values[j+1]=temp;
}
}
}
}
}
相关文章推荐
- javaWeb快速开发必备(三 spring配置)
- Java基础之线程心得(转)
- javaWeb快速开发必备(二 hibernate,jdbc相关配置)
- eclipse+SVN重输入用户名和密码
- [转]java 里面保留字volatile及其与synchronized的区别
- 2016蓝桥杯假期任务之《复数四则运算》
- JAVA基础——输出笔记
- Java中获取键盘输入值的三种方法
- 第一章 java基础
- javaWeb快速开发必备(一 web/struts配置)(ctrl+c,ctrl+v)
- UMEditor(UEditor缩减版)与Struts2集成实现富文本框粘贴图片
- Java 接口
- 《Java程序设计》 第一周学习总结
- Spring,hibernate,struts的面试笔试题
- 如何将Java项目做成windows服务
- java经典面试题struts,hibernate,spring
- 修改JAVA_HOME无效,java版本保持不变的问题解决
- Java中的字符集编码入门-增补字符
- Java数据类型和MySql数据类型对应表
- kafka生产者producer的Java实现。