一个很常见的问题,找出一个数组中和为给定值的两个数的下标。为了简单一般会注明解只有一个之类的。

最容易想到的方法是循环遍历,这里就不说了。

在JS中比较优雅的方式是利用JS的对象作为hash的方式:

 1 var twoSum = function(nums, target) {
 2     var hash = {};
 3     var i;
 4     for (var i = 0; i < nums.length; i++ ) {
 5         if (typeof hash[nums[i]] !== "undefined") {
 6             return [i, hash[nums[i]]];
 7         }
 8         hash[target - nums[i]] = i;
 9     }
10 };

更多相关文章

  1. 由浅到深的分析Javascript OO之写类方式之一:构造函数
  2. 在父div中以编程方式滚动一组div
  3. JavaScript声明全局变量三种方式的异同
  4. 【Python】【matplotlib】面向对象方式绘图
  5. 一个有意思的学习python的方式
  6. 以DAG方式调度作业
  7. caffe中各语言预处理对应方式
  8. Django rest framework 使用自定义认证方式
  9. 读取python中的unicode文件,该文件以与python源代码相同的方式声

随机推荐

  1. 用 Node.js 实现定时任务[每日前端夜话0x
  2. hdfs 读流程
  3. 探寻泛型方法ClassCastException元凶
  4. 第23周 | 「后端圈」与你一起精进 8 个问
  5. IntelliJ IDEA 常用插件一览,让效率成为习
  6. 30 分钟快速入门 Docker 教程
  7. SpringBoot 与 Kotlin 完美交融
  8. 值得关注的 Vue.js开源项目[每日前端夜话
  9. 「面试题」介绍你做过最复杂的系统
  10. 如何健壮你的后端服务