【数据结构】——排序算法——2.1、冒泡排序


                                                    【数据结构】——排序算法——2.1、冒泡排序

一、先上维基的图:

   Bubble sort animation.gif

  图一、冒泡排序

分类排序算法
数据结构数组
最差时间复杂度O(n^2)
最优时间复杂度O(n)
平均时间复杂度O(n^2)
最差空间复杂度总共O(n),需要辅助空间O(1)

二、描述

这个算法是最简单了解和实现的排序算法之一,每轮比较,都按照顺序将左右两个数进行,大(小)的数就往上升。就像车轮猜拳战一般,队尾的那个往前跟其他人猜拳,赢得继续向前与其他人猜拳。到最后达到队首的那个就是这一轮中最厉害的,这个最值就是第一名。紧接着,后面的继续重复刚才的车轮战。直到一个个都向前冒出来,顺序也就排好了。



三、Java程序

public class BubbleSort {
	public static void main(String[] args) {
		int[] number = {95,45,15,78,84,51,24,12};
		int temp = 0;
		for (int i = 0; i < number.length - 1; i++)
			for (int j = 0; j < number.length - 1 - i ; j++)
				if (number[j] > number[j + 1]) {
					temp = number[j];
					number[j] = number[j + 1];
					number[j + 1] = temp;
				} //if end
		for(int i = 0; i < number.length; i++) 
                System.out.print(number[i] + " ");
		System.out.println();
	} //main end
} //BubbleSort end


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值