题目:
We are given two sentences A
and B
. (A sentence is a string of space separated words. Each word consists only of lowercase letters.)
A word is uncommon if it appears exactly once in one of the sentences, and does not appear in the other sentence.
Return a list of all uncommon words.
You may return the list in any order.
Example 1:
Input: A = "this apple is sweet", B = "this apple is sour" Output: ["sweet","sour"]
Example 2:
Input: A = "apple apple", B = "banana" Output: ["banana"]
Note:
0 <= A.length <= 200
0 <= B.length <= 200
A
andB
both contain only spaces and lowercase letters.
代码:
class Solution {
public String[] uncommonFromSentences(String A, String B) {
String[] sa = A.split(" ");
String[] sb = B.split(" ");
List<String> all = new ArrayList<String>(Arrays.asList(sa));
all.addAll(Arrays.asList(sb));
List<String> list = new ArrayList<>();
Set<String> set = new HashSet<>();
set.addAll(all);
Iterator<String> it = set.iterator();
while(it.hasNext()){
String temp = it.next();
if(Collections.frequency(all, temp) == 1){
list.add(temp);
}
}
return list.toArray(new String[0]);
}
}