zoukankan      html  css  js  c++  java
  • 算法

    一.冒泡算法

    var bubbleSort = [9,2,3,8,7,5,4,6,1];         
    var a;
    for(var i=0;i<bubbleSort.length;i++){
        for(var j=i+1;j<bubbleSort.length;j++){
            if(bubbleSort[i]>bubbleSort[j]){
                a=bubbleSort[i];
                bubbleSort[i]=bubbleSort[j];
                bubbleSort[j]=a;
            }
        }
    }

    二. 快速排序

    var arr= [9,2,3,8,7,5,4,6,1];         
    var a;
    for(var i=1;i<arr.length;i++){
        for(var j=i-1;j>=0 && arr[j]>arr[j-1];j--){
            arr[i]=arr[i]^arr[j]
            arr[j]=arr[i]^arr[j]
            arr[i]=arr[i]^arr[j]
        }
    }   

    三. arr[L,...,R]上求最大值

    let arr = [0,5,7,2,9,4,32,3,61,4];
       let process = function (arr, L, R) {
       if(L === R){
           return arr[L];
       }
       let mid = L + ((R - L) >> 1);      // 这样写可以防止溢出,>>右移1位相当于/2,位运算相对快一些
       let leftMax = process(arr, L, mid);
           let rightMax = process(arr, mid + 1, R);
           return Math.max(leftMax, rightMax)
       }
       let max = process(arr, 0, arr.length - 1);
    

      

  • 相关阅读:
    Vue 项目目录结构分析
    Vue 项目环境搭建
    Vue 组件
    Vue 指令
    Vue 实例成员
    Django 静态文件
    MySQL 索引详解
    Django 请求生命周期
    18. 4Sum (JAVA)
    16. 3Sum Closest (JAVA)
  • 原文地址:https://www.cnblogs.com/tyusBlog/p/15716957.html
Copyright © 2011-2022 走看看