Java实现冒泡排序

       冒泡排序的主要思想是对比相邻的元素值,如果满足条件,就交换两个元素的位置即:把较小的元素移动到数组前面,把较大的元素移动到数组后面,这样,较小的元素就像气泡一样从底部升到顶部。

        冒泡排序使用的是双层循环,外层循环主要是控制循环的轮数,让排序数组的轮数-1,内层循环主要是比较相邻的元素,来确定是否要交换位置,对比和交换次数依排序轮数而减少。


第一趟比较,得到最大值64,把64移动到最后,第二趟比较不再比较最大值64,将得到的24移动到64前面,其他循环以此类推,直到完成所有的排序。

设计过程:

> 先得到一个随机生成的数组:详细代码见:http://blog.youkuaiyun.com/weasleyqi/article/details/7768055

> 使用冒泡排序对随机数组进行排序,代码如下:

protected void do_button_actionPerformed(ActionEvent e)
{
	textArea2.setText("");
	for(int i = 1;i<array.length;i++)
	{
		for(int j = 0;j<array.length;j++)
		{
			if(array[j]>array[j+1])
			{
				int temp = array[j];
				array[j] = array[j+1];
				array[j+1] = temp;
			}
			textArea2.append(array[j]+" ");
		}
		textArea2.append("[");
		for(int j = array.length - i;j<array.length;j++)
		{
			textArea2.append(array[j]+" ");
		}
		textArea2.append("]"\n);
	}
}

各种排序之间的比较请见: http://blog.youkuaiyun.com/weasleyqi/article/details/7768055


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值