zoukankan      html  css  js  c++  java
  • bubbleSort和insertSort学习

    
    /**
    	 * 冒泡排序和插入排序,总体思路都是移动算法,外层循环没大差别,内层循环,插入排序是从当前临时比对元素开始,往前面进行排序
    	 * 冒泡排序是从数组最后一个元素开始到当前临时元素之间进行移动,感觉上插入排序效率应该更一点,插入一个有序一个。
    	 *
    	 * 数组的核心是移动过程,冒泡排序,遍历每个元素,从每个元素下标到最后的元素下标,依次比较大小,移动,最后越来越有顺序了
    	 * @param arr
    	 */
    	public static void sortBubble(long[] arr) {
    		long tmp = 0;
    		for(int i = 0; i < arr.length - 1; i++) {
    			for(int j = arr.length - 1; j > i; j--) {
    				if(arr[j] < arr[j - 1]) {
    					//进行交换
    					tmp = arr[j];
    					arr[j] = arr[j - 1];
    					arr[j - 1] = tmp;
    				}
    			}
    		}
    	}
    
    	/**
    	 * 数组核心是移动策略,从当前位置开始往后移动,找出来合适的插入位置就是插入排序的精华
    	 * @param arr
    	 */
    	public static void sortInsert(long[] arr){
    		long tmp =0;
    		for (int i = 1; i < arr.length; i++) {
    			tmp = arr[i];
    			int j = i;
    			while (j > 0 && tmp > arr[j]){
    				arr[j] = arr[j-1];
    				j--;
    			}
    			arr[j] = tmp;
    		}
    	}
    
    
    
  • 相关阅读:
    H5中获取图片中的主色调
    vue provide/inject响应式
    微信小程序入坑之路
    H5入坑之路
    uni-app状态栏相关问题
    uni-app使用iconfont相关
    uni-app入坑之路
    uni-app自定义导航栏(搜索框和按钮)
    浅析浏览器的渲染过程
    SAP ABAP MB51新增栏位字段
  • 原文地址:https://www.cnblogs.com/hbym/p/15693268.html
Copyright © 2011-2022 走看看