我有兩個集合。 Set b
是Set a
的子集。他們都是非常龐大的集合。 我想從b中減去b,做這個常用操作的最佳做法是什麼? 我已經寫了很多這樣的代碼,我不認爲它是有效的。你的想法是什麼?做收集減法的最快方法
僞代碼:(這不是Java API)。
for(int i = 0 ; i < a.size(); i++) {
for (int j=0 ; j < b.size() ;j++) {
// do comparison , if found equals ,remove from a
break;
}
}
我想找到一個算法,不僅適用於Sets,也適用於Array。
編輯:這裏設置不是JAVA API,它是一個數據結構。所以我不在乎Java API是否具有removeAll()方法,我想爲這個問題找到一個通用的解決方案,當我使用Javascript和Actionscript時,遇到了很多像這樣的問題。
我改變了標籤列表,因爲OP對Java解決方案不感興趣。 – CPerkins 2010-03-08 12:40:46
不,不是。我想找到一個通用算法,而不是Java API。 – Sawyer 2010-03-08 12:48:50
對,所以我刪除了java標籤。 – CPerkins 2010-03-08 13:05:15