冒泡排序
2016-04-05 16:33
225 查看
public class Maopao {
public static void main(String[] args) {
int[] arr = {4,6,4,2,1,3,2,1,4,4,5,5,4};
/**
* 使用for循环语句,循环起始变量i的值为数组arr长度减一,
* 循环执行条件i大于于0,循环迭代赋值是i--。
* i的值是从9递减到1,正好9轮
*/
for (int i = arr.length-1; i >0; i--) {
/**
* 在控制轮数for循环里在编写一个for循环语句,
* 循环起始变量j的值为0,循环执行条件j小于i
* 循环迭代赋值是j++。这样每轮的比较次数会随轮数变化而递减
*/
for (int j = 0; j < i; j++) {
//使用if语句来判断每次比较后面的数是否比前面的数大
if (arr[j]<arr[j+1]) {
//如果if条件成立,叫交换2个数据的位置
arr[j]=arr[j]+arr[j+1];
arr[j+1]=arr[j]-arr[j+1];
arr[j]=arr[j]-arr[j+1];
}
}
}
System.out.println(Arrays.toString(arr));
}
}
public static void main(String[] args) {
int[] arr = {4,6,4,2,1,3,2,1,4,4,5,5,4};
/**
* 使用for循环语句,循环起始变量i的值为数组arr长度减一,
* 循环执行条件i大于于0,循环迭代赋值是i--。
* i的值是从9递减到1,正好9轮
*/
for (int i = arr.length-1; i >0; i--) {
/**
* 在控制轮数for循环里在编写一个for循环语句,
* 循环起始变量j的值为0,循环执行条件j小于i
* 循环迭代赋值是j++。这样每轮的比较次数会随轮数变化而递减
*/
for (int j = 0; j < i; j++) {
//使用if语句来判断每次比较后面的数是否比前面的数大
if (arr[j]<arr[j+1]) {
//如果if条件成立,叫交换2个数据的位置
arr[j]=arr[j]+arr[j+1];
arr[j+1]=arr[j]-arr[j+1];
arr[j]=arr[j]-arr[j+1];
}
}
}
System.out.println(Arrays.toString(arr));
}
}
相关文章推荐
- Android 简单三级文字列表
- mysql死锁分析
- spring cache
- 面试题二: java 实现二叉树的中序优先遍历,不能用递归
- 二叉树前序、中序和后序遍历相互求法
- 关于 less 变量
- adb logcat 命令行用法
- linux命令--tar
- json字符串和对象之间的转换
- ORA-01017 DATAGUARD中sqlplus连不到备库
- spring事务管理
- html表单,(内联)框架,背景,颜色
- LVS负载均衡集群(干货来袭)
- 20160404作业
- JavaScript数组去重的两种方法推荐
- 【多重背包】 big event in HDU 外加 输入挂写法
- 管理照相机-控制相机硬件(摘自Android官方培训课程中文版(v0.9.5))
- java的反射机制浅谈
- NYOJ 1015 二部图
- 在shell脚本中以其他用户身份执行命令