【Java刷題】之 two sum

import java.util.HashMap;
public class Solution {
    public int[] twoSum(int[] numbers, int target) {
        int[] res = new int[2]; // 創(chuàng)建一個用來保存結(jié)果的數(shù)組
        HashMap<Integer,Integer> map = new HashMap<>(); // 創(chuàng)建一個用來放數(shù)值與對應(yīng)索引的map
        for(int i = 0; i < numbers.length; i++){
            int num = numbers[i]; //當前數(shù)字
            int pairNum = target - num; //與當前數(shù)字匹配的數(shù)字
            if(map.containsKey(pairNum)){ //查看map中有沒有與當前數(shù)字匹配的數(shù)字
                res[0] = map.get(pairNum);  //獲取匹配數(shù)字的索引作為第一個返回值
                res[1] = i+1; //將當前索引作為第二個返回值
                return res; //返回結(jié)果
            }else{
                map.put(num,i+1); //不匹配就將數(shù)字和索引存起來
            }
        }
        return res;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容