冒泡排序是Java中一种比较简单的算法了,但是对于傻乎乎的我来说,弄懂它也是够呛。毕竟脑袋不会转弯。但是,最终我还是弄懂啦!(开心~~)做一些总结,免得像我这种神经大条的人指不定那天脑袋短路就又给忘了,给自己做小锦囊!!!注:从小到大。
import java.util.Arrays;//引入java.Util包
public class Class4 {
public static void main(String[] args) {
int[] nums={67,3,56,98,24,76,8};//定义一个数组
System.out.println("------排序前------");
System.out.println(Arrays.toString(nums));//将数组转为字符串
for (int i = 0; i < nums.length; i++) {//外层for循环控制比较的轮数
for (int j = i+1; j < nums.length; j++) {//每个数组元素和其它数组元素的比较(内部比较过程)这里面j=i+1是因为i要跟下一个数比较
int temp=0;//交换空间变量
if (nums[i]>nums[j]) {//判断条件:如果第一个值大于第二个值
temp=nums[i];//就把第一个值赋给交换变量
nums[i]=nums[j];//把第二个值赋给第一个值
nums[j]=temp;//把第一个值赋给第二个值 从而完成数值交换
}
}
}
System.out.println("------排序后------");
System.out.println(Arrays.toString(nums));
}
}
##运行结果
------排序前------
[67, 3, 56, 98, 24, 76, 8]
------排序后------
[3, 8, 24, 56, 67, 76, 98]
排序过程(共7个元素,比6轮)
第一轮
67、3、58、98、34、76、8
3、67、56、98、24、76、8(和67比的结果)
第二轮
67、56、98、24、76、8
56、67、98、24、76、8(和67比的结果)
24、67、98、56、76、8(和56比的结果)
8、67、98、56、76、24(和24比的结果)
第三轮
67、98、56、76、24
56、98、67、76、24(和67比的结果)
24、98、67、76、56(和56比的结果)
第四轮
98、67、76、56
67、98、76、56(和98比的结果)
56、98、76、67(和67比的结果)
第五轮
98、76、67
76、98、67(和98比的结果)
67、98、76(和76比的结果)
第六轮
98、76
76、98(和98比的结果)
总结:
排序的基本规则
- 定义临时变量准备在内层循环中交换数值元素的值
- 定义二重循环,外层循环控制比较的轮数;内层循环控制每个元素与数组其它元素值进行的比较
- 实现数组元素值交换
以上就是我对冒泡排序的简单总结啦!新手上路,请各位大神多多指教。