排序方法之冒泡排序

这里写自定义目录标题

排序方法

	对于一个初学Java,c这类的编程语言,是无论也避不开排序方法的。但是如何学好一个排序方法,还得要注重积累。完善出自己的方法。做到一个真正懂方法的人。

冒泡排序

理论:
对于有一组无序的数字,要想经过一段代码,就自动的把它按照排序(升序、降序)的规则,进行排序。做到有条不紊。
冒泡排序的基本思想:对比相邻的元素值,若满足一定的条件,就进行交换元素(数字),把较小(大)的数字移动到前面,较大的数字移动到后面。换句话来说,就是利用调换元素的下标位置,进行排序。
计算过程:
利用双层循环的方式来进行控制,外循环来控制排序的轮数,一般以排序的数组的元素长度减去1次。最后一次就剩下他自己,不需要在进行比较了。内循环来对比两个相邻的元素大小,来判断我们的元素是不是要进行调换。在例如这里插入图片描述
例如,在这个6个数字的排序过程中,每进行一次循环得到的结果如图。
算法实现:
a:方法

public class Bubblesort{
/*
*冒泡排序法
*/
public void sort(int [] arrary){
	for(int i=1;i<arrary.length;i++){//比较相邻的元素,大的数往后面跑
		forint j=0;j<arrary.length-i;j++//如果前面一个数比后面的一个数大,则两个元素调换位置。
			{if(arrary[j]>arrary[j+1])
				int temp=arrary[j];//把第一个元素放在一个临时变量上
				arrary[j+1]=arrary[j];//把第二个元素放在第一个元素单元中
				arrary[j]=temp;//把临时变量的元素保存到第二个元素中
			}
		}
	}
	showArrary(arrary);
}
 public void showArrary(int[] arrary){
	 System.out.println("冒泡排序的结果:");
		 for(int t:arrary)
		  {
			 System.out.print(t+" ");
 		 }
 			 System.out.println();
 } 
	public static void main(String[] args){
		int[] arrary={63,4,24,1,3,15};
		BubbleSort sorter=new Bubblesort();
			sorter.sort(arrary);
		}
	}
	
b方法
public class maopaopaixufa {
	public static void main(String[] args) {
int i,j;
int a[]= {1,3,5,33,23,53,22};
for(i=1;i<a.length;i++) {
	for(j=1;j<a.length-i;j++)
		{
		if(a[j]>a[j+1]) {
			int temp=a[j];
			a[j]=a[j+1];
			a[j+1]=temp;
		}
		}
	}for(int t:a) 
	{System.out.print(t+" ");}
	}
	}
	
c方法
import java.util.Arrays;//arrays.sort()方法:
//*arrays.sort(object) 其中的object为数组。此方法为默认的为升序排列

public class ss {
	public static void main(String[] args) {
		int a[]=new int[] {1,32,2,43,5,234,4};
		Arrays.sort(a);
		System.out.println("排序的结果为下:");
         for(int i=0;i<a.length;i++)
	
		{
			System.out.print(a[i]+" ");
		}
	}
}			

下期说一说选择排序方法。记得来按时学习哦。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值