Java实现冒泡排序类

本文介绍了冒泡排序的原理和实现过程。通过一趟排序找到最大元素并确定其位置,逐步减少需要比较的元素数量,直到所有元素排序完成。文章提供了一个将冒泡排序编写的Java类,方便重复使用。
摘要由CSDN通过智能技术生成

冒泡排序

输入:一维数组存放n个无序数
输出:从小到大排序输出
算法:从下标j=0开始向右遍历数组,比较a[j]与a[j+1],若a[j]>a[j+1],则交换,此为一趟排序。
重复上述操作,比较n-1趟,排序完成。
分析:一趟排序可以得到最大的元素a[n-1],其实就是打擂台思想。
对于每一对a[j]与a[j+1]的比较,交换完大的元素就是a[j+1];
然后拿此时最大的元素与下一个元素比较并交换,所以a[j+1]中存放的永远是目前比较过的数中最大的数;
第一趟排序完,最大的元素就会放到a[n-1],确定了最大元素的位置,之后这个元素便不需要参加排序了,下一趟排序的个数便会少 一个。
第二趟排序完,第二大的元素就会放到a[n-2],位置确定,下一趟排序个数减一。
。。。。。。
第n-1趟排序,确定了n-1个数的位置,还剩一个就是呆在该待的位置上了,排序完成。

package test;
public class test1 {
   
	public static void main(String[] args){
   
		int []a={
   5,4,7,8,9,10,2,1,3,6};
		int len=a.length;
		for(int i=0;i<len-1;i++)//第i+1趟排序
		{
   
			for(int j=0;j<len-1-i;j
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值