冒泡排序

2016/06/20 13:11
阅读数 32
package 排序;

public class BubbleSort
{
	public static void sort(int[] array)
	{
		boolean flag;//标识变量
		for(int i=0;i<array.length-1;i++)
		{
			flag=false;//若本次为排序,则说明数组已经有序不需要再排序,直接退出循环
			for(int j=0;j<array.length-i-1;j++)
			{
				if(array[j]>array[j+1])
				{
					array[j]=array[j]+array[j+1];
					array[j+1]=array[j]-array[j+1];
					array[j]=array[j]-array[j+1];
					flag=true;
				}
			}
			if(!flag)
				break;
		}
	}
	
	public static void test(int[] testarray,int testcount)
	{
		long sum=0,temp;
		for(int i=1;i<=testcount;i++)
		{
			int[] t=testarray.clone();
			long begin1=System.currentTimeMillis();
			sort(t);
			long end1=System.currentTimeMillis();
			//System.out.println(Arrays.toString(a));
			temp=end1-begin1;
			if(i>5) sum+=temp;
			//System.out.println("time"+i+":"+temp);
		}
		System.out.println("BubbleSort.sort()\taveg:"+(sum/(testcount-5)));
	}
}

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部