LeetCode刷题---两数之和
2024-01-08 15:34:49
解题思路:
该题使用哈希表的思想解决该问题
首先定义一个Map,key为数组中的每个元素,value为每个元素的索引下标。接着遍历原数组,对每一个元素进行判断,如果哈希表中包含target-nums[i],则将其value和当前下标封装到一个数组中返回,如果不包含target-nums[i],则将target-nums[i]作为key,i作为value加入到Map中。
代码实现:
ublic int[] twoSum(int[] nums, int target) {
Map<Integer, Integer> hashtable = new HashMap<Integer, Integer>();
for (int i = 0; i < nums.length; ++i) {
if (hashtable.containsKey(target - nums[i])) {
return new int[]{hashtable.get(target - nums[i]), i};
}
hashtable.put(nums[i], i);
}
return new int[0];
}
文章来源:https://blog.csdn.net/weixin_47109902/article/details/135457579
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!