您的位置:首页 > 编程语言 > Java开发

Java实现排序算法之冒泡排序

2015-10-27 22:01 477 查看
冒泡排序的思想:

将带排序的序列两两进行比较,较大的一个“冒泡”,“冒泡”即如果下标为A 与B的数据比较,A 大则与B交换位置,否则就不交换位置,交换位置后,此时B的位置编程A,B 的下一个位置是B,两者在进行比较,每进行一轮排序,总是较大的数排在剩下序列的最高位,也因此为冒泡排序。

什么情况下使用:

在已知待排序列中,只有少部分是无序的,这时考虑使用冒泡排序是高效的。

稳定性:

相同的数在比较后,这两个数的前后位置没有发生变化,则该算法是稳定,因此冒泡排序是稳定的算法。

时间复杂度和空间复杂度:

时间复杂度:O(n^2),空间复杂度:O(1)

算法实现:

public static void bubbleSort(int[] s){
		int temp=0;
		for(int i=0;i<s.length-1;i++){
			for(int j=0;j<s.length-i-1;j++){
				if(s[j]>s[j+1]){
					temp=s[j];
					s[j]=s[j+1];
					s[j+1]=temp;
				}
			}
		}
	}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: