济南IT培训 > 达内新闻
Java开发新手冒泡排序
- 发布:济南IT培训
- 来源:互联网
- 时间:2018-04-17 17:00
/*
* 济南IT培训整理:冒泡排序(Bubble Sort).
* 在冒泡排序算法中,需要重复的走访要排序的数列,一次比较两个元素,
* 如果它们的大小顺序错误就把它们交换过来.
本案例要求使用冒泡排序算法实现对数组的排序.
有一个长度为 10的整型数组,
使用冒泡排序算法将数组按照升序排列,并输出排序的过程以及结果.
* */
/*
* 分析:
* 第一步:创建一个长度为10的数组
* 以后这里可以引申为用户输入一个数字代表创建数组的长度
* 第二步:输出这个数组
* 第三步:冒泡排序
* 假设一个新数组为10,9,4,18
* 第一轮第一个元素开始冒泡,需要比较3次得到最大值----->0 3
* 每次冒泡都是从第一个元素开始
* 第二轮第一个元素开始冒泡,需要比较2次得到最大值----->1 2
* 第三轮第一个元素开始冒泡,需要比较1次得到最大值----->2 1
* 第四轮无需再做比较
* 轮数i为length-1 外循环for
* 比较次数为length-1-i 内循环for
* 第四步:输出新数组
* */
package day05;
public class BubbleSort {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//第一步:创建长度为10的新数组
int[] arr = new int[10];
//第二步:给新数组随机赋值并输出

System.out.println("新创建数组为:");
for(int i=0;i<arr.length;i++){
arr[i]=(int)(Math.random()*100);//元素大小在0-99之间
System.out.print(arr[i]+" ");
}
System.out.println();
//第三步:冒泡排序
for(int i=0;i<arr.length-1;i++){
for(int j=0;j<arr.length-1-i;j++){
int temp;
if(arr[j]>arr[j+1]){//注意这里比较的下标是j不是i,外层走一次内层走所有次
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
//第四步:输出新数组
System.out.println("冒泡排序后的新数组是:");
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
}
}
更多济南IT培训相关咨询,请扫描下方二维码
最新开班时间
- 北京
- 上海
- 广州
- 深圳
- 南京
- 成都
- 武汉
- 西安
- 青岛
- 天津
- 杭州
- 重庆
- 哈尔滨
- 济南
- 沈阳
- 合肥
- 郑州
- 长春
- 苏州
- 长沙
- 昆明
- 太原
- 无锡
- 石家庄
- 南宁
- 佛山
- 珠海
- 宁波
- 保定
- 呼和浩特
- 洛阳
- 烟台
- 运城
- 潍坊
Java开发新手冒泡排序
- 发布:济南IT培训
- 来源:互联网
- 时间:2018-04-17 17:00
/*
* 济南IT培训整理:冒泡排序(Bubble Sort).
* 在冒泡排序算法中,需要重复的走访要排序的数列,一次比较两个元素,
* 如果它们的大小顺序错误就把它们交换过来.
本案例要求使用冒泡排序算法实现对数组的排序.
有一个长度为 10的整型数组,
使用冒泡排序算法将数组按照升序排列,并输出排序的过程以及结果.
* */
/*
* 分析:
* 第一步:创建一个长度为10的数组
* 以后这里可以引申为用户输入一个数字代表创建数组的长度
* 第二步:输出这个数组
* 第三步:冒泡排序
* 假设一个新数组为10,9,4,18
* 第一轮第一个元素开始冒泡,需要比较3次得到最大值----->0 3
* 每次冒泡都是从第一个元素开始
* 第二轮第一个元素开始冒泡,需要比较2次得到最大值----->1 2
* 第三轮第一个元素开始冒泡,需要比较1次得到最大值----->2 1
* 第四轮无需再做比较
* 轮数i为length-1 外循环for
* 比较次数为length-1-i 内循环for
* 第四步:输出新数组
* */
package day05;
public class BubbleSort {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//第一步:创建长度为10的新数组
int[] arr = new int[10];
//第二步:给新数组随机赋值并输出

System.out.println("新创建数组为:");
for(int i=0;i<arr.length;i++){
arr[i]=(int)(Math.random()*100);//元素大小在0-99之间
System.out.print(arr[i]+" ");
}
System.out.println();
//第三步:冒泡排序
for(int i=0;i<arr.length-1;i++){
for(int j=0;j<arr.length-1-i;j++){
int temp;
if(arr[j]>arr[j+1]){//注意这里比较的下标是j不是i,外层走一次内层走所有次
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
//第四步:输出新数组
System.out.println("冒泡排序后的新数组是:");
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
}
}
更多济南IT培训相关咨询,请扫描下方二维码
最新开班时间
- 北京
- 上海
- 广州
- 深圳
- 南京
- 成都
- 武汉
- 西安
- 青岛
- 天津
- 杭州
- 重庆
- 厦门
- 哈尔滨
- 济南
- 福州
- 沈阳
- 合肥
- 郑州
- 长春
- 苏州
- 大连
- 长沙
- 昆明
- 温州
- 太原
- 南昌
- 无锡
- 石家庄
- 南宁
- 中山
- 兰州
- 佛山
- 珠海
- 宁波
- 贵阳
- 保定
- 呼和浩特
- 东莞
- 洛阳
- 潍坊
- 烟台
- 运城