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

    思想:从第一个元素开始,对数组中两两相邻的元素比较,将值较小的元素放在前面,值较大的元素放在后面,一轮比较完毕,一个最大的数沉底成为数组中的最后一个元素,一些较小的数如同气泡一样上浮一个位置。n个数,经过n-1轮比较后完成排序。

    var arr=[5,0,-56,900,12];
    var flag=false;//标志位,用于控制程序比较次数,如果已有序,则此标志可以减少比较次数
    for(var i=0;i<arr.length-1;i++){//大的排序次数(arr.length-1)
      document.writeln("循环<br/>");//用于查看比较次数
      for(var j=0;j<arr.length-1-i;j++){   //小的排序
        if(arr[j]>arr[j+1]){
          //交换
          var temp=arr[j];
          arr[j]=arr[j+1];
          arr[j+1]=temp;
          flag=true;//交换过
        }
      }
      if(flag){
        flag=false;
      }else{
        break;//已是有序,退出
      }
    }
    //遍历输出排序后的数组
    for(var i=0;i<arr.length;i++){
      document.writeln(arr[i]+"&nbsp;");
    }

    宝剑锋从磨砺出,梅花香自苦寒来。
  • 相关阅读:
    将博客搬至CSDN
    Linux-进程管理&网络管理
    MySQL架构备份之双机热备
    Linux目录结构&文件管理
    markdown文件即 .md 的基本常用编写语法
    Nginx
    Java 面试题(收集整理...ing)
    CentOS7 VS CentOS8
    Linux 学习
    vi/vim 命令整理
  • 原文地址:https://www.cnblogs.com/haimengqingyuan/p/5424133.html
Copyright © 2011-2022 走看看