zoukankan      html  css  js  c++  java
  • 冒泡排序(中级版)

     1 <!DOCTYPE html>
     2 <html>
     3 <head lang="en">
     4     <meta charset="UTF-8">
     5     <title></title>
     6 </head>
     7 <body>
     8 <script>
     9 
    10     var arr = [7,6,5,4,3,2,1];
    11     //需求:冒泡排序。
    12     //理论:1.比较轮数n-1。  2.比较次数n-1。  3.符合某个条件交换位置。
    13     //核心:双重for循环。
    14     //步骤:
    15     //1.双重for循环。
    16     //2.指定轮数和次数
    17     //3.判断是否符合标准。如果符合标准交换位置。
    18     console.log(arr);
    19 
    20     //每轮比较少比较一次。(每一轮都会比较出一个最大值,然后后一轮没有必要再比较了,所以没比较一轮,就少比较一次。。。)
    21     var m = 0;
    22     var n = 0;
    23 
    24 
    25     //1.双重for循环。(外循环控制轮数)
    26     for(var i=0;i<arr.length-1;i++){
    27         //2.指定轮数和次数(内循环控制次数)
    28         for(var j=0;j<arr.length-1-i;j++){
    29             //3.判断是否符合标准。如果符合标准交换位置。
    30                 //从小到大排列顺滑,如果前面的比后面的大,那么交换位置。
    31             if(arr[j] > arr[j+1]){
    32                 var temp = arr[j];
    33                 arr[j] = arr[j+1];
    34                 arr[j+1] = temp;
    35             }
    36             m++;
    37         }
    38         n++;
    39     }
    40 
    41     console.log(arr);
    42     console.log(m);
    43     console.log(n);
    44 
    45 
    46 
    47 
    48 </script>
    49 </body>
    50 </html>
  • 相关阅读:
    day06_02 继承
    day06_03 多继承区别
    day03_04 字符集编码转换
    day04_03 序列化与反序列化
    day04_06 单线程生成器的并行效果(协程)
    day04_02 装饰器 高阶版
    day04_05 内置方法
    复合控件的开发心得
    从子节点找父节点的循环sql
    asp中试用存储过程
  • 原文地址:https://www.cnblogs.com/BingBing-Deng/p/10243034.html
Copyright © 2011-2022 走看看