JavaScript算法练习:将一个数插入数组并返回其索引值

特别声明:小站对部分原创文章已开启付费阅读,并开通年费VIP通道,年费价格为 ¥365.00元。如果您喜欢小站的内容,可以点击开通会员进行全站阅读。如果您对付费阅读有任何建议或想法,欢迎发送邮件至: airenliao@gmail.com!(^_^)

今天在这篇文章要完成的算法练习是:将一个数按照大小顺序插入到一个数组中,并且找出这个数在该数组中的索引值。

任务

将创建一个函数where()并且给这个函数传入两个参数,其中一个参数是数组arr,而另一个参数是num。函数where()要完成的功能是,将参数num按照大小顺序插入到数组arr中,并且找出num在该数组中的索引值。

测试用例

  • where([1,2,3,4], 1.5)将返回1
  • where([20,3,5],19)将返回2
  • where([40,60],50)将返回1

实现思路

实现上述功能,大致思路分为下面几个步骤:

  • 可以通过push()或者unshift(),把参数num放到arr
  • 对数组arr进行排序,在过sort()将数组由小到大做升序排序
  • 使用indexOf()找出num在数组arr中的index(或者使用for循环)
  • 传回index

要将数字num传入数组arr中,简单点的方法,可以通过数组的一些方法,比如Array.prototype.push()方法将一个元素或多个元素添加到一个数组的末尾,或者通过Array.prototype.unshift()方法在数组开头添加一个或者多个元素。

var arr = [40,60];
arr.push(50); // [40,60,50]
// 或者
arr.unshift(50); //[50,40,60]

另外,函数where()另一个功能是要把num放到数组arr中,并且让其由小大到排序。要达到这个效果,那么要将数组进行排序,

剩余80%内容付费后可查看

如需转载,烦请注明出处:https://www.w3cplus.com/javascript/bonfire-where-do-i-belong.html

如果文章中有不对之处,烦请各位大神拍正。如果你觉得这篇文章对你有所帮助,打个赏,让我有更大的动力去创作。(^_^)。看完了?还不过瘾?点击向作者提问!

赏杯咖啡,鼓励他创作更多优质内容!
返回顶部