zoukankan      html  css  js  c++  java
  • js冒泡排序与二分法查找

    冒泡排序

    var attr=[1,5,7,6,3,9,2,8,4];

    var zj=0;
    //控制比较轮数
    for(var i=0;i<attr.length-1;i++)
    {
        //控制每轮的比较次数
        for(var l=0;l<attr.length-1-i;l++)
      {
              // 与下一个比较
        if(attr[l]<attr[l+1])
        {
                     //互换 
           zj=attr[l];
           attr[l]=attr[l+1];
           attr[l+1]=zj;
        }
      }
    }   
    alert(attr[0])
    View Code

    二分法查找

    //必须先排好序

    var attr=[1,2,3,4,5,6,7,8,9];

    //要找的值

    var v=6;

    //取最大索引与最小索引的平均值与查询值比较,排除掉索引大的或索引小的,然后在剩下的索引里面再次判断,直到找到一致的。

    var min=0;
    var max=attr.length-1;
    var zj;
    while(true)
    {
        //计算中间索引
        zj=parseInt((min+max)/2);
        //比较中间值与传入值
        if(attr[zj]==v)
        {
            break;
        }
         if(zj==min)
        {
            if(attr[zj+1]==v)
            {
                zj=zj+1;
                break;
            }
            else
            {
                zj-1;
                break;
            }
        }
        if(attr[zj]>v)
        {
            max=zj;
        }
        {
            min=zj;
        }
    }
    alert(zj);
    View Code
  • 相关阅读:
    zencart_magiczoom
    如何把一个TXT文本文件按行数分割成多个文本文件
    工作时常用东西汇总
    asp Vernum
    sitemap制作
    php后门屌炸天
    威盾解密
    软路由
    企业安全工作要点
    内网ARP攻击
  • 原文地址:https://www.cnblogs.com/bilibiliganbei/p/5885029.html
Copyright © 2011-2022 走看看