您的位置:首页 > 其它

算法---冒泡排序

2016-09-23 00:07 127 查看
package sort;
/*
* 冒泡排序:
*
* 原理:遍历,比较相邻的两个数,每遍历一次,把最大的数往上冒
*
*/
public class BubbleSort {

public final void bubble (int [] arr)//冒泡方法,加final是为了防止被擅改
{
for(int x=0;x<arr.length-1;x++)
{
for(int i=0;i<arr.length-1-x;i++)//每遍历一次,需要交换的数组个数就减1(因为最后一个是最大值了不用再交换)
{
change(arr,i);
}
}
for(int j=0;j<arr.length;j++)//打印
{
System.out.println(arr[j]);
}
}

public void change(int [] arr,int i)//交换位置方法,把它封装,便于冒泡方法调用便于修改
{
int temp;
if(arr[i+1]<arr[i])
{
temp=arr[i+1];
arr[i+1]=arr[i];
arr[i]=temp;
}
}

public static void main(String[] args) {

int [] arr={6,4,2,7,3,9,5};
BubbleSort b=new BubbleSort();
b.bubble(arr);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  冒泡排序