关于算法:leetcode算法1两数之和

53次阅读

共计 794 个字符,预计需要花费 2 分钟才能阅读完成。

👏👏👏

哈喽!大家好,我是【学无止境小奇】,一位酷爱分享各种技术的博主!😍😍😍

⭐【学无止境小奇】的创作主旨:每一条命令都亲自执行过,每一行代码都理论运行过,每一种办法都实在实际过,每一篇文章都良心制作过。✊✊✊

⭐【学无止境小奇】的博客中所有波及命令、代码的中央,除了提供图片供大家参考,另外会在图片下方提供一份纯文本格式的命令或者代码不便大家粘贴复制间接执行命令或者运行代码。🤝🤝🤝

⭐如果你对技术有着浓重的趣味,欢送关注【学无止境小奇】,欢送大家和我一起交换。😘😘😘

❤️❤️❤️感激各位朋友接下来的浏览❤️❤️❤️

文章目录
一、leetcode 算法
1、两数之和
1.1、题目
1.2、思路
1.3、答案
一、leetcode 算法
1、两数之和
1.1、题目
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
你能够假如每种输出只会对应一个答案。然而,数组中同一个元素在答案里不能反复呈现。
你能够按任意程序返回答案。

1.2、思路
这里最简略的是能够用双层 for 循环来解决问题,然而双层 for 循环的工夫复杂度为 n^2,所以这样解决工夫复杂度太高,这时咱们能够将数据放入一个 map 中来解决复杂度高的问题。.

1.3、答案

class Solution {

public int[] twoSum(int[] nums, int target) {Map<Integer,Integer> hashmap = new HashMap<Integer,Integer>();
    for(int i = 0; i < nums.length; i++){if(hashmap.containsKey(nums[i])){return new int[]{hashmap.get(nums[i]), i}; 
        }
        hashmap.put(target - nums[i], i);
    }
    return null;
}

}

正文完
 0