冒泡排序-Python、Java实现

今天去移动研究院面试,被问到排序问题,接下来几篇打算将排序的几种算法一一复习一下。

冒泡排序的大概内容是将相邻的两个数值进行比较,如果第二个大于第一个,就将第二个和第一个位置互换,如此往后,最后一个位置就是最大的,如此进行继续,最终将数组按从小到大顺序排列。


Python实现:

def maopao_sort(a):
    c=len(a)
    for i in range(0,c-1):
        for j in range(i+1,c):
            if arr[j]<arr[i]:
                arr[j],arr[i]=arr[i],arr[j]
    print(a)

arr=[1,2,3,4,56,25,64,67,34,57,87,78,68,59]
print(arr)
maopao_sort(arr)

Java实现:

package demo;

public class MaopaoSort{
	
	public static void main(String[] args) {
		int arrys[]={2,6,4,23,76,43,22,41,24,56};
		for(int i=0;i<arrys.length-1;i++ ){
			for(int j=0;j<arrys.length-i-1;j++){
				int temp=1;
				if (arrys[j]>arrys[j+1]){
					temp=arrys[j+1];
					arrys[j+1]=arrys[j];
					arrys[j]=temp;
				}	
			}
		}
		System.out.println("冒泡排序的结果是:");
		for(int i=0;i<arrys.length-1;i++){
			System.out.print(arrys[i]+",");
		}
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值