Untitled
unknown
java
3 years ago
2.2 kB
4
Indexable
class SetTesting { public Set<Integer> subtract(Set<Integer> a, Set<Integer> b){ Map<Integer, Boolean> count = new HashMap<>(); for(Integer itr : b){ count.put(itr, true); } Set<Integer> ans = new HashSet<>(); for(Integer itr : a){ if(!count.containsKey(itr)){ ans.add(itr); } } return ans; } public Set<Integer> union(Set<Integer> a, Set<Integer> b){ Map<Integer, Boolean> count = new HashMap<>(); Set<Integer> ans = new HashSet<>(); for(Integer itr : a){ count.put(itr, true); ans.add(itr); } for(Integer itr : b){ if(!count.containsKey(itr)){ ans.add(itr); } } return ans; } public Set<Integer> intersect(Set<Integer> a, Set<Integer> b){ Map<Integer, Boolean> count = new HashMap<>(); Set<Integer> ans = new HashSet<>(); for(Integer itr : a){ count.put(itr, true); } for(Integer itr : b){ if(count.containsKey(itr)){ ans.add(itr); } } return ans; } public static void main(String[] args){ Set<Integer> a = new HashSet<>(); Set<Integer> b = new HashSet<>(); a.add(1); a.add(2); a.add(3); a.add(4); b.add(2); b.add(4); b.add(6); b.add(8); SetTesting test = new SetTesting(); Set<Integer> ans1 = test.subtract(a,b); Set<Integer> ans2 = test.union(a,b); Set<Integer> ans3 = test.intersect(a,b); System.out.println("Subtract : "); for(Integer ans : ans1){ System.out.print(ans + " "); } System.out.println(); System.out.println("Union : "); for(Integer ans : ans2){ System.out.print(ans + " "); } System.out.println(); System.out.println("Intersect : "); for(Integer ans : ans3){ System.out.print(ans + " "); } System.out.println(); } }
Editor is loading...