(第8讲)冒泡排序

来源:互联网 发布:淘宝客服主管日常管理 编辑:程序博客网 时间:2024/05/16 00:34

第八讲

冒泡排序的基本思想是对比相邻的元素值,如果满足条件就叫唤元素值,把较小的元素移动到数组的前面,把大的元素移动到数组的后面(也就是交换两个元素的位置),这样较小的元素就会从底部上升到顶部。

冒泡算法是由双层循环是吸纳,其中外层循环用于控制排序轮数,一般为要排序的数组长度-1,因为最后一次循环只剩下一个数组元素,不需要对比,同时数组已经完成排序了。而内层循环只要用于对比数组中每个邻近元素的大小,以确定是否交换位置,对比和叫唤的次数岁排序轮次而减少。

public class Maopao2 {

public static void main(String[] args) {
int arr[]={-1,9,3,8,4,2};
Bubble a=new Bubble(); 
a.sort(arr); 
}
}
class Bubble{
public void test(int b)
{
b++;
}
public void sort(int arr[])
{
int temp=0;
//第一次循环,控制轮数,轮数=数组元素-1
for(int i=0;i<arr.length-1;i++)
{
//第二次循环,控制每轮对比的次数
//次数=数组元素-1-当前论数
for(int j=0;j<arr.length-1-i;j++)

{
if(arr[j]>arr[j+1])
{
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
//输出排好的数组
for(int i=0;i<arr.length;i++)
{

System.out.print(arr[i]+"  ");
}
}

}

0 0