用linkedlist怎么去重

时间:2024-02-23 09:16:51

要使用LinkedList去重,你可以遍历LinkedList,并将每个元素添加到一个HashSet中,这样就可以去除重复元素。然后,你可以根据HashSet中的元素重新构建一个新的LinkedList。

以下是示例代码:

 

java

import java.util.*; public class Main { public static void main(String[] args) { LinkedList<Integer> list = new LinkedList<>(Arrays.asList(1, 2, 2, 3, 4, 4, 5)); LinkedList<Integer> uniqueList = removeDuplicates(list); System.out.println("Original LinkedList: " + list); System.out.println("LinkedList after removing duplicates: " + uniqueList); } public static <T> LinkedList<T> removeDuplicates(LinkedList<T> list) { HashSet<T> set = new HashSet<>(); LinkedList<T> uniqueList = new LinkedList<>(); for (T element : list) { if (set.add(element)) { uniqueList.add(element); } } return uniqueList; } }

在这个示例中,我们遍历原始的LinkedList,并将每个元素添加到HashSet中。由于HashSet不允许重复元素,因此重复的元素会被自动过滤掉。然后,我们将HashSet中的元素按照它们在原始LinkedList中的顺序,依次添加到新的LinkedList中,这样就得到了去重后的LinkedList