如何轻松删除java中链接列表中的重复项?如何轻松删除java中链接列表中的重复项?
0
A
回答
9
我不知道,如果你的要求是使用一个链表,但如果没有,使用一组而不是列表(您标记了一个问题,“最佳实践”)
3
很容易在什么?如果它是一个相当短的列表,最简单的解决方案是将其转储到一个集合,然后回到列表。
myList = new LinkedList<Whatever>(new HashSet<Whatever>(myList));
但是为什么要这样呢?如果你不想重复,你应该使用Set
;如果您只需要一个列表,以便可以按照插入的顺序保留元素,则可以使用LinkedHashSet
来获得两全其美的效果:Set
可以像LinkedList
那样预测性地迭代。
+0
我同意你在需要Set时不要使用List。您的代码的一个小细节:myList = new LinkedList
16
改为使用LinkedHashSet,然后首先不会有重复。
2
搜索通过他们,如果两个代表相同的东西,请删除其中的一个。
你还想要什么?你需要建议如何快速做到这一点?如果是这样的话,在查找重复项时将节点存储在散列表中以便于匹配。
1
import java.util.*;
import java.lang.*;
class Main
{
public static void main (String[] args) throws java.lang.Exception
{
Collection<String> c = new LinkedList<String>();
c.add("JAR");c.add("BDK");c.add("JDK");c.add("JAR");c.add("WAR");c.add("APK");c.add("BDK");
c=new HashSet(c);
c=new ArrayList(c);
for(String s : c)
{
System.out.println(s);
}
}
}
相关问题
- 1. Java从链接列表中删除重复项
- 2. 删除链接列表中的重复值(Java中的递归)
- 3. 添加之前删除链接列表中的重复项 - C
- 4. C:删除未排序链接列表中的重复项
- 5. 删除链接列表中的重复项
- 6. C++,如何横切链接列表,同时删除重复项
- 7. 链接列表删除列表中的重复,参考混淆
- 8. 如何删除链接列表Java中的元素,即使有重复?
- 9. 删除列表中的重复项
- 10. 删除列表中的重复项
- 11. 从链接列表中删除项目
- 12. 如何从Perl中的链接列表中删除项目?
- 13. 如何从SQL中的表连接中删除重复项
- 14. 从Python列表中删除重复项
- 15. 从Django列表中删除重复项
- 16. odoo one2many列表中删除重复项
- 17. 从Python列表中删除重复项
- 18. 从C++列表中删除重复项
- 19. Python从列表中删除重复项?
- 20. 从排序的链接列表中删除重复的元素
- 21. 如何在链接列表中删除
- 22. 如何从链接列表中删除?
- 23. 如何从列表中删除重复
- 24. 删除重复的链接
- 25. 如何轻松剖析JavaScript的链接?
- 26. 如何删除链接列表中的最后一项?
- 27. 在Python中删除两个链接数组中的重复项
- 28. 为什么在删除链接列表中的重复项时保留'previous'?
- 29. 我的代码从链接列表中删除重复项有什么问题?
- 30. 如何从列表中删除连续的重复项?
我遗漏了一些细节,抱歉,数据结构需要重复释放,排序,并且能够有一个迭代器。 – 2009-05-29 16:22:22
像TreeSet这样的SortedSet将完成所有这些。 – 2009-06-01 20:58:49
@Peter Lawrey - 感谢您的评论,我几天前发现了TreeSet数据结构,这正是我所需要的。 – 2009-06-02 03:29:22