美文网首页
一个 int 数组(size > 2)中,其中两个数之和等

一个 int 数组(size > 2)中,其中两个数之和等

作者: 并肩走天涯 | 来源:发表于2016-08-24 12:15 被阅读466次

一个 int 数组(size > 2)中,其中两个数之和等于规定的一个数,找出这两个数在数组中的下标。
假设数组元素的值各不相同,则要求时间复杂度O(n),n为数组的长度。

var hasNum = function ( a, target ) {   
  let result = [];
  // Array default sort
  let i = 0, j = a.length - 1;   
  while (i < j) {      
    if (a[i] + a[j] == target) {
           result.push(i);
         result.push(j);
         return result;
    }      
    if (a[i] + a[j] > target) {
       j--;      
    }      
    if (a[i] + a[j] < target) {         
       i++;      
    }   
  }
};

console.log(hasNum([1,5,7,3],10));

输入数组为[1,5,7,3]以及指定的目标值为10,可以从中找出两个数3和7,和为10,输出这两个数的数组下标。

相关文章

  • 一个 int 数组(size > 2)中,其中两个数之和等

    一个 int 数组(size > 2)中,其中两个数之和等于规定的一个数,找出这两个数在数组中的下标。假设数组元素...

  • 算法2 Two Sum

    题目:给出一个数组,再给定一个目标数,求出当数组中的两个数之和等于目标数时,这个两个数的索引?例:一个数组为int...

  • Java算法之TwoSum

    给定一个int数组,其中两个数相加等于一个特定值,返回这两个数的索引 示例 int数组: [2, 7, 11, 1...

  • Java算法之TwoSum

    给定一个int数组,其中两个数相加等于一个特定值,返回这两个数的索引 示例int数组: [2, 7, 11, 15...

  • Php数组函数

    array_chunk 将一个数组分割成多个数组,其中每个数组的单元数目由 size 决定。最后一个数组的单元数目...

  • 快速查找数组中“和”为X的两个数

    快速判断在一个数组中,是否存在两个数字,让这两个数字之和等于一个给定的值 X。 以数组 arr[] = {11, ...

  • LeetCode 第18题:四数之和

    1、前言 2、思路 采用三数之和的思路,原本三数之和可以分解为:数组中的一个数 + 此数右边的数求两数之和,那么四...

  • 两数之和 IV - 输入 BST(golang)

    原题:两数之和 IV - 输入 BST 方法一: 中序遍历,有序存放到一个数组中,通过两数之和 II - 输入有序...

  • leetcode [1] Two Sum

    题目要求: 给定一个数组nums,然后再给定一个数字,找出数组中哪两个数字之和等于这个给定的数字。例如:Given...

  • 指针常量、常量指针

    一个数组int b[]就相当于一个int *const p,常量指针值不变,所以两个数组不能赋值 int i=10...

网友评论

      本文标题:一个 int 数组(size > 2)中,其中两个数之和等

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