首页 > 代码库 > leetcode 170: Two Sum III - Data structure design
leetcode 170: Two Sum III - Data structure design
Two Sum III - Data structure design
Total Accepted: 311 Total Submissions: 1345Design and implement a TwoSum class. It should support the following operations:add
andfind
.
add
- Add the number to an internal data structure.find
- Find if there exists any pair of numbers which sum is equal to the value.
For example,
add(1); add(3); add(5); find(4) -> true find(7) -> false [分析] HASH table O(N)存, O(1) 取public class TwoSum { Map<Integer, Integer> map = new HashMap<Integer, Integer>(); public void add(int number) { if(map.containsKey(number)) { map.put(number, map.get(number) + 1); } else { map.put(number, 1); } } public boolean find(int value) { for(int key : map.keySet()) { int another = value - key; if(another == key && map.get(key) > 1) { return true; } else if(another != key && map.containsKey(another)) { return true; } } return false; } }
leetcode 170: Two Sum III - Data structure design
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。