冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,重复以上过程,直至最终完成排序。
冒泡排序算法实现(Java):
public static void bubbleSort(int[] list) {
int temp;
for(int k=1;k<list.length;k++){
for(int i=0;i<list.length-k;i++){
if(list[i]>list[i+1]){
//Swap list[i] with list[i+1]
temp=list[i];
list[i]=list[i+1];
list[i+1]=temp;
}
}
}
}
冒泡排序算法性能分析
若记录序列的初始状态为"正序",则冒泡排序过程只需进行一趟排序,在排序过程中只需进行n-1次交换,且不移动记录;反之,若记录序列的初始状态为"逆序",则需进行n(n-1)/2次比较和记录移动。因此冒泡排序总的时间复杂度为O(n*n)。
分享到:
相关推荐
冒泡排序 JAVA1冒泡排序 import java.io.*; class BubbleSort { static int temp=0; public static void anykey_f() { char tChar; System.out.print("\n\n"); System.out.println(" Press any key to ...
冒泡排序的java代码实现 ,附带注释等详细介绍
针对很多在校大学生,需要完成老师交给的任务,特此写了一个冒泡排序,不过只传上了.java文件
冒泡排序详解,简单而详细的讲清楚了,什么是冒泡排序。 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首...
java冒泡排序代码,亲测能用,控制台输入数据,自动排序
java冒泡排序集锦方法!所有的方法都有!很不错的!希望对大家有帮助哈哈!
冒泡排序算法,Java语言写的,里面附了运行截图,分享给大家。
用java语言实现冒泡排序;java语言的冒泡排序算法实现
自己写的冒泡排序,随机产生1000次,每次产生0-1000个数,验证算法正确性。java实现。
javajavajavajavajavajavajavajavajava
用java 编写的冒泡排序算法,并涵盖了冒泡排序算法的几种优化方式,以及在冒泡排序上的二分查找法。
单链表的冒泡排序,热烈欢迎大家的下载,谢谢谢谢
可以用java来得到冒泡排序的实现,由屏幕输入存入数组。
冒泡排序
冒泡排序(Bubble Sort) 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经...
冒泡排序
用Java语言实现冒泡排序,很简单的方法。
冒泡排序.txt