复习一下冒泡排序

   简介

          冒泡排序就是一个交换排序的算法,通过交换数据元素的位置达到排序的目的

  基本思想

         拿到一个无序列表从头开始,两两进行比较大小交换位置,直到最后把最大(小)放到队尾,从而成为有序序列的一部分,

接着重复这个比较交换过程。算法的核心在于每次通过两两比较交换位置,选出剩余无序序列里最大(小)的数据元素放到队尾。

 实例
 代码

 int temp ;
int []s={3,6,4,2,11,10,5};
 
 

for ( int i= 0;i<s. length- 1;i++){ //需要进行length-1轮
 
 
for ( 
int j= 
0;j<s. 
length- 
1-i;j++){//每轮进行比较的次数 
if(s[j]>s[j+ 
1]){ temp=s[j+ 
1]; s[j+ 
1]=s[j]; s[j]=temp; } }} 
for ( 
int i= 
0;i<s. 
length;i++){ System. 
out.println( 
"sort"+s[i]);}  


 
需要进行lenth-1次冒泡过程,因为进行了lenth-1次冒泡,那么lenth-1个元素已经是有序的,那么最后一个元素也是有序的

每次冒泡需要比较的次数,这个是变化的。因为每次冒泡过程中,其实已经将一个元素的需要确定,所以之后的冒泡就不要进行比较了




  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值