冒泡思想的简单理解

1,冒泡排序的思想

​ "冒泡"从字面意思上可以理解为生活中我们常喝的碳酸饮料,摇一摇里面的二氧化碳就会从底部浮到顶部.

​ 在计算机领域,冒泡排序的思想大致分为以下步骤:

​ 1) 从前往后,每相邻的两个元素进行比较,将较大的元素依次往后排;

​ 2) 第一次进行两两元素比较,将最大元素将排在后面,也就是最大索引值处;

​ 3)在第二次进行两两元素比较时,因为已经出现一个最大值,此最大值不参与比较;

​ 4)依次进行比较,当进行第n次比较,有数组长度-1个元素不参与比较,直至所有元素从小到大依次排序.

2.冒泡排序的图示

​ 假设一组元素{ 9 , 8 , 7 , 6 , 5 , 4 };

​ …

​ 第五轮比较:

在这里插入图片描述

​ 第四轮比较
在这里插入图片描述

​ 第三轮比较:
在这里插入图片描述

​ 第二轮比较:
在这里插入图片描述

​ 第一轮比较:

在这里插入图片描述

​ 从以上冒泡排序的图示中,第一次比较后将产生一个最大值,第二次产生第二个最大值,依次往上,越往上就如同气泡从底端往上端走.直至产生从小到大的元素排序结果.

3.代码演示
class Test{
//程序入口
	public static void main(String[] args){
	int[] arr = {9 , 8 , 7 , 6 , 5 , 4} ;
	
	bubbleSort(arr);              //调用冒泡排序
	System.out.println("冒泡排序后:");
	printArray(arr);              //调用遍历数组
	}
//冒泡排序
	public static void bubbleSort(int[] arr){
			for(int x = 0 ; x < arr.length-1 ; x ++){   //比较次数,数组长度-1是为了防止角标越界
				for(int y = 0 ; y < arr.length-1-x; y ++){   
					//判断,并使用第三方变量将元素大的后置
					if(arr[ y ] > arr[ y + 1 ]){
						int temp = arr[ y ] ;
						arr[ y ] = arr[ y + 1 ] ; 
						arr[ y + 1 ] = temp ;
					}
				}
			}
		}
//遍历数组
	public static void printArray(int[] arr){
			System.out.print("[") ;
			for(int x = 0 ; x < arr.length ; x ++ ){
				if( x == arr.length-1){
					System.out.println(arr[x] + "]") ;
				}else{
					System.out.print(arr[x] + ", ") ;
				}
			}
		}	
}

4.运行结果

在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值