LC 数组与字符串 - 两数之和
数组 字符串 两数 LC
2023-09-11 14:19:17 时间
题目
解题
这道题其实不难,一般人想到的就是暴力破解法,写两层循环做判断就可以了;
但是我想的是能尽量花少的步骤和时间去做,具体想法是这样的:遍历一次,每次计算差值,然后判断差值在不在当前数组,且不是当前值,比如:数组为【2,3,7,9】,目标是9,遍历第一个值是2,用目标值9-2=7,然后查看7在不在数组中,且下标不是当前值的下标0,如果运气好第一个值,第一次就找到了,就算运气不好也只用遍历一次。
源码:
/**
* @param {number[]} nums
* @param {number} target
* @return {number[]}
*/
var twoSum = function(nums, target) {
for(let i=0;i<nums.length;i++){
let a = nums.indexOf(target - nums[i]);
if(a > -1 && a != i){
return [i,a];
break;
}
}
};
结果
结果虽然不错,但是还有更厉害的算法,继续加油!
相关文章
- java基础知识回顾之---java String final类普通方法的应用之字符串数组排序
- 03- Shell脚本学习--字符串和数组
- 【JavaScript】数组随机排序 之 Fisher–Yates 洗牌算法
- json 字符串包含数组转换为object对象是报异常java.lang.ClassCastException: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to
- 给串口发送16进制字符串命令和包括16进制命令转换为字节数组
- C#数组之 []、List、Array、ArrayList应用
- (数组)众数问题
- Swift数组
- LeetCode(80):删除排序数组中的重复项 II
- go解析复杂json数组字符串:结合使用json和simple-json库
- Go语言字符串和数组的相互转换
- [PHP]快速实现:将二维数组转为一维数组
- Atitit 字符串转换数组main参数解析 args splitByWholeSeparator String string=" -host 101.1 8*124 -db 1
- 【C语言】算法、程序流程控制、数组、字符串、函数
- python 字典 元组 集合 列表 字符串 字节数组 常用的方法总结
- Leetcode2248. 多个数组求交集(map轻松求交集问题)
- 【编程实践】Golang 字符串数组排序
- bash中不可以用字符串做数组下标
- C# 数组与字符串转换
- C#里分割字符串和字符串转换为网络发送字节数组的方法
- 数组指针存储在堆栈的形式
- json字符串、json对象、数组之间的转换
- 算法总结——堆栈、字符串、数组类题目
- 用字符数组存放一个字符串
- 输出二维数组任一行任一列元素的值
- LeetCode 2357. 使数组中所有元素都等于零
- JS字符串和数组之间的转换
- Shell全解析(二):字符串变量和数组变量