算法之冒泡排序
冒泡算法
假设给出n个无序的元素,要求从小到大排列。冒泡排序是非常见到的排序算法,
它同过相邻元素比较大小交换位置,第一次将最小的一个元素提到第一位,第二次将第二小的元素提到第二位,
最多经历n-1遍循环就可以把这组元素变为有序状态
 1.相邻两个元素两两比较,找出最小的一个,冒泡(交换位置提到第一位)
 2.找出第二小的一个,提到第二位
 3.自然有序,终止循环
package com.dataStructure;
import java.util.ArrayList;
import java.util.List;
import org.omg.CORBA.DATA_CONVERSION;
/**
 * 
 * @author Sherman
 *
 */
public class BubbleSort {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    List<Integer> list=new ArrayList<Integer>();
    list.add(8);
    list.add(5);
    list.add(1);
    list.add(4);
    list.add(2);
    list.add(3);
    
    
    boolean exChange = false;//默认无序状态
    for(int i=list.size();i>0;i--){
        exChange = false;
        for(int j=list.size()-1;j>0;j--){
            if(list.get(j-1)>list.get(j)){
                int temp=0;
                temp=list.get(j-1);
                list.set(j-1, list.get(j));
                list.set(j,temp);
                exChange=true;
            }
            
        }
        if(false == exChange){
            break;
        }
        System.out.println(list.toString());
    }
    
    }
}输出:
[1, 8, 5, 2, 4, 3]
[1, 2, 8, 5, 3, 4]
[1, 2, 3, 8, 5, 4]
[1, 2, 3, 4, 8, 5]
[1, 2, 3, 4, 5, 8]
相关推荐
  hang0    2020-08-16  
   风吹夏天    2020-07-07  
   小海    2020-06-25  
   清溪算法君老号    2020-06-06  
   wonner    2020-06-03  
   清溪算法君老号    2020-06-01  
   RememberMePlease    2020-05-01  
   清溪算法君老号    2020-04-25  
   rein0    2020-04-21  
   rein0    2020-04-18  
   qingsongzdq    2020-03-03  
   wonner    2020-02-25  
   horizonheart    2020-02-23  
   baike    2020-02-16  
 # 第三题:使用python实现冒泡排序def BubbleSort: long = len for i in range: for j in range: if list[i] < list[j]:
  GhostLWB    2020-01-11  
   singer    2020-01-08  
   蜗牛慢爬的李成广    2020-01-04  
 