美文网首页剑指offer刷题
数字在排序数组中出现的次数

数字在排序数组中出现的次数

作者: 大脸猫_2e21 | 来源:发表于2017-12-21 22:48 被阅读0次

    题目:统计一个数字在排序数组中出现的次数。例如输入排序数组{1,2,3,3,4,5}和数字3,由于3在这个数组中出现了2次,因此输出4

    function GetNumberOfK(data, k)
    {
        // write code here
      if(data.length===0) return 0
      var m=data.indexOf(k)
      var n=data.lastIndexOf(k)
    //前提必须是在数组的前后都找到了k,使用n-m+1获得k的个数
      if(m!=-1&&n!=-1&&m!=n){
          return n-m+1
      }
    //针对数组中只有一个k的情况,必须限定m和n都不为-1,因为都为-1的时候  说明数组中没有这个数
       else if(m==n&&m!=-1&&n!=-1){
            return 1
        }
    //没找到返回0
        else{
            return 0
        }
    }
    

    相关文章

      网友评论

        本文标题:数字在排序数组中出现的次数

        本文链接:https://www.haomeiwen.com/subject/capzwxtx.html