💝💝💝歡迎來到我的博客,很高興能夠在這里和您見面!希望您在這里可以感受到一份輕松愉快的氛圍,不僅可以獲得有趣的內容和知識,也可以暢所欲言、分享您的想法和見解。
- 推薦:kwan 的首頁,持續學習,不斷總結,共同進步,活到老學到老
- 導航
- 檀越劍指大廠系列:全面總結 java 核心技術點,如集合,jvm,并發編程 redis,kafka,Spring,微服務,Netty 等
- 常用開發工具系列:羅列常用的開發工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
- 數據庫系列:詳細總結了常用數據庫 mysql 技術點,以及工作中遇到的 mysql 問題等
- 懶人運維系列:總結好用的命令,解放雙手不香嗎?能用一個命令完成絕不用兩個操作
- 數據結構與算法系列:總結數據結構和算法,不同類型針對性訓練,提升編程思維,劍指大廠
非常期待和您一起在這個小小的網絡世界里共同探索、學習和成長。💝💝💝 ?? 歡迎訂閱本專欄 ??
博客目錄
- 一.題目描述
- 1.題目信息
- 2.題目地址
- 3.示例
- 4.提示
- 二.題解
- 1.hash 表
- 2.解題思路
- 3.關鍵點
- 三.自我分析
- 1.解題思路
- 2.思考鏈路
一.題目描述
1.題目信息
給定一個整數數組
nums
和一個整數目標值target
,請你在該數組中找出 和為目標值target
的那 兩個 整數,并返回它們的數組下標。你可以假設每種輸入只會對應一個答案。但是,數組中同一個元素在答案里不能重復出現。
你可以按任意順序返回答案。
2.題目地址
題目地址
3.示例
示例 1:
輸入:nums = [2,7,11,15], target = 9
輸出:[0,1]
解釋:因為 nums[0] + nums[1] == 9 ,返回 [0, 1] 。
示例 2:
輸入:nums = [3,2,4], target = 6
輸出:[1,2]
示例 3:
輸入:nums = [3,3], target = 6
輸出:[0,1]
4.提示
提示:
- 2 <= nums.length <= 104
- -109 <= nums[i] <= 109
- -109 <= target <= 109
- 只會存在一個有效答案
二.題解
1.hash 表
public int[] twoSum(int[] nums, int target) {//用hash表HashMap<Integer,Integer> map=new HashMap<>();for(int i=0;i<nums.length;i++){int num=nums[i];if(map.containsKey(target-num)){return new int[]{map.get(target-num),i};}else{map.put(num,i);}}return null;
}
2.解題思路
- 要求 2 個數的索引
- 可以把其中一個放入到 hash 表,去找剩余的值
- 如果剩余的值是之前插入的,那說明這 2 個數存在,直接返回
3.關鍵點
- 使用 hash 表
- 用值當 key,索引當 value
- 注意 containsKey 關鍵字的寫法
三.自我分析
1.解題思路
if 有思路開寫
else去看相關標簽,確定具體解題方法if 有思路開寫else看提示信息if 有思路開寫else看答案
2.思考鏈路
- 沒有思路,沒有思路的時候,一定需要記住的是題型
- 多做,多思考,多總結
- 形成自己的肌肉記憶
- 多多調試
覺得有用的話點個贊
👍🏻
唄。
??????本人水平有限,如有紕漏,歡迎各位大佬評論批評指正!😄😄😄💘💘💘如果覺得這篇文對你有幫助的話,也請給個點贊、收藏下吧,非常感謝!👍 👍 👍
🔥🔥🔥Stay Hungry Stay Foolish 道阻且長,行則將至,讓我們一起加油吧!🌙🌙🌙