1.先上代码----冒泡排序
public static void main(String[] args) {
int[] arr={2,6,3,8,7};
int temp=0;
for (int j=0;j<arr.length-1;j++){
for (int i=0;i<arr.length-1;i++){
if (arr[i]>arr[i+1]){
temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}
System.out.println(Arrays.toString(arr));
}
}
-
(1)在第一个for循坏里面我们控着要循坏的轮数
(2)在第二个for循坏里面我们控制着每一次轮数中要比较的次数 -
我们首先定义一个数组int[] arr={2,6,3,8,7}和定义一个常量int temp=0;给他一个初始化的值,我
们后面会用到这个temp值,借助他来帮我们实现数字位置的交换 -
我们先写第一轮的比较的次数
for(int i=0;i<arr.length-1;i++){
写一个if判断语句
if(arr[i]>arr[i+1]){//前面一个数字的值大于后面一个数字的值了,所以要进行交换
temp=arr[i]//将前面一个赋值给了temp
arr[i]=arr[i+1]//将后面一个值赋值给了前面一个值
arr[i+1]=temp//将前面一个值 赋值给了后面一个值,这里就已经实现了数值的交换了
}
}
6.前面我们写了第一轮的比较次数,我们在for循环外面嵌套一个for循环表示轮数
for (int j=0;j<arr.length-1;j++){//控制轮数
for (int i=0;i<arr.length-1;i++){控制每个轮数比较的次数
if (arr[i]>arr[i+1]){
temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}
7.这是最基础的,后面还有优化的算法