`
xiaguangme
  • 浏览: 72857 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

去除重复元素

 
阅读更多
/*
 * 文 件 名:  FilterRepeat.java
 * 版    权:   
 * 描    述:  <描述>
 * 修 改 人:  simon
 * 修改时间:  2011-10-9
 */
package org.simon.filterrepeat;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * 
 * @author  chenxiaguang@gmail.com
 * @version  [版本号, 2011-10-9]
 * @see  [相关类/方法]
 * @since  [产品/模块版本]
 */
public class FilterRepeat
{

    /** <一句话功能简述>
     * <功能详细描述>
     * @param args
     * @see [类、类#方法、类#成员]
     */
    public static void main(String[] args)
    {
        List<String> testList = new ArrayList<String>();
        List<String[]> repeatList = new ArrayList<String[]>();
        for(int i=0;i<150000;i++)
        {
            testList.add("test," + String.valueOf(i) + ",aaaa");
        }
        List<String[]> testArrList = new ArrayList<String[]>();
        long a = System.currentTimeMillis();
        for(String s : testList)
        {
            testArrList.add(s.split(","));
        }
        long c = System.currentTimeMillis();
        System.out.println(c-a);
        Collections.sort(testArrList, new Comparator()
        {

            @Override
            public int compare(Object o1, Object o2)
            {
                String [] s1 = (String[]) o1;
                String [] s2 = (String[]) o2;
                return s1[1].compareTo(s2[1]);
            }
            
        });
        System.out.println(System.currentTimeMillis() - c);
//        testList.add("2");
//        testList.add("3");
//        testList.add("1");
//        testList.add("2");
//        testList.add("1");
//        testList.add("3");
//        testList.add("2");
//        testList.add("1");
//        testList.add("1");
        
        // ConcurrentModificationException
        long b = System.currentTimeMillis();
        System.out.println(b-c);
//        for(int i=0;i<testArrList.size();i++)
//        {
//            for(int j=testArrList.size()-1;j>i;j--)
//            {
//                if(testArrList.get(i)[1].equals(testArrList.get(j)[1]) )
//                {
//                    //
//                    repeatList.add(testList.get(j));
//                    testList.remove(j);
//                }
//            }
//        }
        List<String[]> noRepeatList = new ArrayList<String[]>();
        for(int i=0;i<testArrList.size()-1;i++)
        {
            
            if(testArrList.get(i)[1].equals(testArrList.get(i+1)[1]) )
            {
                //
                repeatList.add(testArrList.get(i));
            }
            else
            {
                noRepeatList.add(testArrList.get(i));
            }
            
        }
        noRepeatList.add(testArrList.get(testArrList.size()-1));
        System.out.println(System.currentTimeMillis() - b);
        System.out.println("end:" + (System.currentTimeMillis() - a));

    }

}

 

 

去除重复元素

不要太考虑奇技淫巧  毕竟才15w条

分享到:
评论

相关推荐

    LabVIEW 删除数组中重复元素实例

    2. **删除重复元素**:找到重复元素后,可以创建一个新的数组,只包含未重复的元素。有两种常见方法: - **Filtering(筛选)**:使用“Filter.vi”或者自定义的筛选函数,根据已知的重复元素索引,保留第一次出现...

    删除一维数组中的重复元素.rar_LabVIEW 数组_labview_labview删除重复_删除重复元素

    labview删除数组中的重复元素,不改变顺序,留下不重复的元素

    java 去除重复元素

    在Java编程中,处理数据集合时,我们常常会遇到去除重复元素的需求。这可能是为了保持数据的唯一性,或者为了优化存储和计算效率。本文将详细介绍如何在Java中去除重复元素,主要关注数组和列表这两种常见数据结构。...

    顺序表中删除重复元素,为小实验

    "顺序表中删除重复元素" 删除重复元素是顺序表中的一种常见操作,旨在从顺序表中删除重复的元素,保持顺序表的唯一性和有序性。在本实验中,我们将使用C语言来实现顺序表中删除重复元素的功能。 数据结构 在本...

    如何在无序单链表内删除重复元素

    如何在无序单链表内删除重复元素

    删除数组重复元素(VB.NET)

    在VB.NET编程中,处理数组时经常会遇到需要删除重复元素的情况。这有助于优化数据结构,减少内存占用,尤其是在处理大量数据时。本示例提供的源码和可执行程序旨在演示如何在VB.NET环境中有效地实现这一功能。以下是...

    Python实现列表删除重复元素的三种常用方法分析

    本文实例讲述了Python实现列表删除重复元素的三种常用方法。分享给大家供大家参考,具体如下: 给定一个列表,要求删除列表中重复元素。 listA = ['python','语','言','是','一','门','动','态','语','言'] 方法1...

    顺序表删除重复元素java.docx

    6. **输出**:程序的输出首先显示原始列表,然后显示删除重复元素后的列表,展示了removeDuplicates方法的功能。 这个例子展示了如何利用ArrayList的特性有效地删除顺序表中的重复元素。值得注意的是,虽然这种方法...

    删除定制整型数组中重复元素输出剩余元素

    在实际开发中,这种删除重复元素的方法经常被用于数据清洗、去重等场景,尤其是在大数据处理中。对于大型数据集,可以考虑使用更高效的数据结构,如TreeSet或使用流(Stream) API进行操作。 总的来说,Java中删除...

    顺序表删除重复元素.pdf

    顺序表删除重复元素的基本思路是通过遍历数组,比较相邻元素是否相等,若不相等则保留,相等则跳过。这种策略通常适用于已排序的数组,因为我们可以假设重复元素会连续出现。以下是一个具体的Python实现: ```...

    CH2A-单链表删除重复元素.7z

    本章节我们将深入探讨如何在单链表中删除重复元素,这是一个常见的操作,特别是在处理序列数据时。这个主题与北京邮电大学(BUPT)的数据结构课程密切相关,是学生在学习过程中需要掌握的关键技能之一。 首先,我们...

    去除链表重复元素-Java 实现

    附件是Java 实现的去除链表重复元素。在Java中,去除单链表中的重复元素可以通过使用哈希集合(HashSet)来实现,该集合用于存储已经遍历过的元素。在遍历链表的过程中,我们将每个元素与集合中的元素进行比较,如果...

    单链表中重复元素的删除

    在删除重复元素之后,我们需要输出删除后的单链表。这个过程可以使用一个循环来实现,我们从链表的头节点开始,依次遍历每个节点,并输出节点的值。 下面是一个输出删除后的单链表的示例代码: ```c p = qt; printf...

    从数组中删除重复元素的 Java 程序.docx

    在 Java 编程中,处理数组是常见的任务之一,尤其是当需要从数组中删除重复元素时。本篇文章将深入探讨如何在 Java 中实现这一功能,同时考虑到效率和内存使用。 首先,我们来看一种较为直观但空间复杂度较高的方法...

    用Python实现顺序表删除重复元素

    顺序表删除重复元素

    顺序表删除重复元素.md py

    顺序表删除重复元素

    在list集合中输入元素,去除重复的元素并输出

    根据给定文件的信息,本文将详细介绍如何在Java的List集合中去除重复元素的三种方法:使用for循环、使用迭代器以及利用HashSet的特性。 ### 一、使用for循环去除重复元素 这种方法的基本思想是通过双重循环来遍历...

    删除有序表重复项.从而实现在链表中对重复项的操作

    通过阅读和理解这段代码,你可以更好地掌握链表操作和删除重复元素的技巧。"PrimesProgram链表最大公约数"可能是一个关于计算素数和链表操作的练习,而"实验截图.doc"可能是对整个过程的记录或解释。 总之,删除...

    数据结构实验顺序存储合并表然后删除合并表中相同元素

    ### 数据结构实验:顺序存储合并表并删除重复元素 #### 实验背景与目的 本实验主要探讨了在数据结构领域中如何对两个非递增有序的线性表进行合并,并在此基础上进一步处理合并后的表,以去除其中重复的元素。通过这...

    删除数组重复元素.vi

    Labview中一种删除重复元素的方法

Global site tag (gtag.js) - Google Analytics