JAVA使用hashMap实现

和为S的两个数字

http://www.nowcoder.com/questionTerminal/390da4f7a00f44bea7c2f3d19491311b

import java.util.*;
public class Solution {
    public ArrayList<Integer> FindNumbersWithSum(int [] array, int sum) {
        Map<Integer, Integer> map = new HashMap<>();
        ArrayList<Integer> ans = new ArrayList<>();
        if (array==null || array.length<2) return ans; //没有 返回空ans
        for (int i=0;i<array.length;i++){
            if (map.get(array[i])==null){
                map.put(sum- array[i],array[i]);
            }else {
                ans = new ArrayList<>();
                ans.add(sum-array[i]);
                ans.add( array[i]);
            }
        }
        return ans;
    }
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务