关于java的冒泡排序
我们前面的文章中了解到了数组的方法类Arrays,我们本篇文章来了解一下最出名的排序算法之一,冒泡排序!😀
冒泡排序的代码还是非常简单的,两层循环,外层冒泡轮数,里层依次比较,江湖中人人皆知!
冒泡排序逻辑
1、比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换位置。
2、每一次比较都会产生出一个最大,或者最小的数字。
3、下一轮则可以少一次排序
4、依次循环,直到结束。
我们下面直接用代码来进行说明,方便大家更好的理解😊。
在看代码之前,我们先来说明一个问题,因为冒泡排序是比较相邻的元素,比较大小然后对换位置,有时候为了图方便,直接写成了下面的代码进行对换。
a = b;
b = a;
因为b已经赋值给a了,所以再次赋值的话a和b是相等的,没有意义。
我们可以用换饮料的方式,给大家说明一下😉
假如有一杯西瓜汁和一杯芒果汁,需要把饮料互换,芒果汁倒入西瓜汁的杯子,西瓜汁倒入芒果汁的杯子。
我们这个时候,就可以拿来一个空杯子,先把西瓜汁倒入空杯子,再把芒果汁倒入西瓜汁的杯子,然后空杯子里面的西瓜汁再倒入芒果汁的杯子里面,这个空的杯子就是我们定义的临时变量。
import java.util.Arrays;
public class Demo
{
public static void main(String[] args)
{
int[] a = {
1,22,34,2,88,76,98}; //声明一个数组并赋值
int[] sort=sort(a);
System.out.print(Arrays.toString(sort));
}
//冒泡排序
public static int[] sort(int[] array)
{
int temp=0;//定义一个临时变量
for(int i = 0;i<array.length-1