FCC-算法基础:我身在何处

算法基础:我身在何处

返回数组(第一个参数)被排序后,将一个值(第二个参数)插入到该数组中而使数组保持有序的最小的索引。返回的值应该是一个数字。

例如,getIndexToIns([1,2,3,4], 1.5)应该返回 1因为 1.5 大于 1(索引为 0),但小于 2(索引为 1)。

同样地,getIndexToIns([20,3,5], 19)应该返回 2因为数组被排序后会变成 [3,5,20],而 19小于 20(索引为 2)且大于 5(索引为 1)。

function getIndexToIns(arr, num) {
  // Find my place in this sorted array.
  arr.push(num);
  arr.sort(function(a, b){return a - b;});
  return arr.indexOf(num);
}

getIndexToIns([40, 60], 50);

indexOf函数:

语法: arr.indexOf(x)
查找元素x在数组中的位置。

sort函数:

语法: arr.sort();
将数组按从小到大排序。

p.s 当数组为数字时,由于sort的比较方法为字符串比较,例如5与20比5会比20大,因为5比2大,所以需修改为arr.sort(function(a,b){return a-b;}即可

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值