admin管理员组文章数量:1032987
哈希表系列一>两数之和
题目:
链接: link
方法:
暴力代码:
代码语言:javascript代码运行次数:0运行复制public int[] twoSum(int[] nums, int target) {
解法一:暴力解法:
int n = nums.length;
for(int i = 1; i <= n; i++)
for(int j = i-1; j >= 0; j--){
if(target == nums[i] + nums[j]){
return new int[]{i,j};
}
}
return null;
}
优化后代码:
代码语言:javascript代码运行次数:0运行复制class Solution {
//解法二:用哈希表优化:
Map<Integer,Integer> hash = new HashMap<>();//<nums[i],i>
for(int i = 0; i < nums.length; i++){
int find = target - nums[i];
if(hash.containsKey(find)){
return new int[]{i,hash.get(find)};
}
hash.put(nums[i],i);
}
return null;
}
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-04-03,如有侵权请联系 cloudcommunity@tencent 删除returntarget优化hashint哈希表系列一>两数之和
题目:
链接: link
方法:
暴力代码:
代码语言:javascript代码运行次数:0运行复制public int[] twoSum(int[] nums, int target) {
解法一:暴力解法:
int n = nums.length;
for(int i = 1; i <= n; i++)
for(int j = i-1; j >= 0; j--){
if(target == nums[i] + nums[j]){
return new int[]{i,j};
}
}
return null;
}
优化后代码:
代码语言:javascript代码运行次数:0运行复制class Solution {
//解法二:用哈希表优化:
Map<Integer,Integer> hash = new HashMap<>();//<nums[i],i>
for(int i = 0; i < nums.length; i++){
int find = target - nums[i];
if(hash.containsKey(find)){
return new int[]{i,hash.get(find)};
}
hash.put(nums[i],i);
}
return null;
}
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-04-03,如有侵权请联系 cloudcommunity@tencent 删除returntarget优化hashint本文标签: 哈希表系列一>两数之和
版权声明:本文标题:哈希表系列一>两数之和 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1747994669a2239047.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论