首页 > 代码库 > Where do I belong

Where do I belong

先给数组排序,然后找到指定的值在数组的位置,最后返回位置对应的索引。

举例:where([1,2,3,4], 1.5) 应该返回 1。因为1.5插入到数组[1,2,3,4]后变成[1,1.5,2,3,4],而1.5对应的索引值就是1

同理,where([20,3,5], 19) 应该返回 2。因为数组会先排序为 [3,5,20]19插入到数组[3,5,20]后变成[3,5,19,20],而19对应的索引值就是2

这是一些对你有帮助的资源:

  • Array.sort()

思路就是先把数值插入数组,然后排序,找出插入的数在新数组的索引。    push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

function where(arr, num) {
   arr.push(num);        //插入数组
  return arr.sort(function(f,s){
    return f-s;          //排序从小到大
  }).indexOf(num);
}

 

 

Where do I belong