zoukankan      html  css  js  c++  java
  • 冒泡排序

    package day9_01_array;
    /*
     * 定义一个函数接收一个整型数组arr,
     * 此函数功能用于给数组元素从大到小排序。并返回排序后数组。
     */
    public class SortAlgorithm {
    	public static void main(String[] args){
    		int[] b = {8,9,5,4,6,7};
    		reverseOrder(b);
    	}
    	//将数组能够倒叙排列的函数,用的冒泡排序
    	static int[] reverseOrder(int[] arr){
    		for(int i =0;i<arr.length-1;i++){//外层循环是对比几轮
    			for(int j = 0;j<arr.length-1-i;j++){//内层循环是每轮对比几次,两两对比
    				if(arr[j]<arr[j+1]){//比较大小互换位置
    					int temp =arr[j+1];
    					arr[j+1] = arr[j];
    					arr[j] = temp;	
    				}
    			}
    		}
    		for(int i=0;i<arr.length;i++){//遍历排序后的数组并且打印
    			System.out.print(arr[i]+"	");
    		}
    		return arr;
    	}
    }
    

     冒泡排序的优化

    package day10_01_Review;
    import java.util.Arrays;
    /*
     * 冒泡排序及优化
     */
    public class BubbleSort {
        public static void main(String[] args){
            int[] a ={1,2,3,5,4,6};
            sort(a);
        }
        static void sort(int[] arry){
            boolean judge = false;
            for(int i = 0;i<arry.length-1;i++){//表示排序进行了几轮
                for(int j = 0;j<arry.length-1-i;j++){//每轮排了几次
                    if(arry[j]>arry[j+1]){//判断并且调换位置
                        int temp = arry[j];
                        arry[j] = arry[i];
                        arry[i] = temp;
                        judge = true;//如果有一轮比较里面需要交换说明这轮排序没有结束,并且将judge赋值为true
                    }
                }
                System.out.println("第"+(i+1)+"轮比较");
                System.out.println(Arrays.toString(arry));
                if(judge==false){//判断如果有一轮一次也没进行交换说明本轮已经完成排序
                    break;
                }else{//如果有排序,则judge已经变成了true为了下一轮准确判断是否进行交换位置,必须将judge初始化
                    judge = false;
                }
            }
            
            
        }
    }
    以粮为纲全面发展
  • 相关阅读:
    redis使用watch完成秒杀抢购功能:
    OAUTH协议
    常用mysql命令大全
    版本控制器 (Svn,Git)
    vue axios上传文件实例
    vue-resource 和 axios的区别
    js递归算法1+ 2+3.....100的和
    vue-cli title 里面怎动态显示文字
    Entity Framework With Mysql 之Code First
    关于a标签下的img元素在IE7下不能点击的问题
  • 原文地址:https://www.cnblogs.com/alexliuf/p/13157972.html
Copyright © 2011-2022 走看看