当前位置: 首页 > 面试题库 >

写一个方法,传入数字x,从一个一维数组里找到两个数字符合“n1 + n2 = x”

杜辰龙
2023-03-14
本文向大家介绍写一个方法,传入数字x,从一个一维数组里找到两个数字符合“n1 + n2 = x”相关面试题,主要包含被问及写一个方法,传入数字x,从一个一维数组里找到两个数字符合“n1 + n2 = x”时的应答技巧和注意事项,需要的朋友参考一下
/*方法说明
 *@method arrFindSum
 *@for 所属类名
 *@param 
 *        arr{arr} 目标数组
 *        sum{num} 目标数字
 *@return {arr} 返回数组中符合的项
 */
let arrFindSum = function (arr, sum) {
    if(!Array.isArray(arr) || !Number.isFinite(sum)) return alert('请输入符合条件的参数')
    let arrSum = []
    arr.map((e, index1) => {
        arr.forEach((ele, index2) => {
            if( index1<index2 && (e + ele == sum)){
                arrSum.push({'key1': index1, 'val1': arr[index1], 'key2':index2, 'val2' : arr[index2]})
            }
        })
    })
    return arrSum
}
arrFindSum([1,2,3,7,5,9,7,8,9,6,5,4,1], 10)
 类似资料: