zoukankan      html  css  js  c++  java
  • 通过编码分别测试ArrayList 和 LinkedList 添加、删除对象时的耗时情况(精确到纳秒),并总结出以上两种集合的数据结构的不同之处。

    /**
    运行结果:
    ---------- 运行 ----------
    ArrayList添加1000个数据用时:568312纳秒
    ArrayList删除1000个数据用时:105195纳秒
    LinkedList添加1000个数据用时:325207纳秒
    LinkedList删除1000个数据用时:290250纳秒
    
    输出完成 (耗时 0 秒) - 正常终止
    分析:
    通过以上结果,我们可以看出LinkedList在对进行添加和删除的操作中,耗费时间少于ArrayList,效率上有明显的优势。
    ArrayList集合底层的数据结构是数组,所以对定向查找速度比较快
    LinkedList集合底层数据结构是链表,链表结构的特点是增删改速度比较快。
    */
    import java.util.*;
    class ListDemo 
    {
    	public static void main(String[] args) 
    	{
    		ArrayList<Integer> al = new ArrayList<Integer>();
    		long startTimeAddal = System.nanoTime();
    		for(int i=0;i<1000;i++)
    		{
    			al.add(i);
    		}
    		long endTimeAddal = System.nanoTime();
    		System.out.println("ArrayList添加1000个数据用时:" + (endTimeAddal - startTimeAddal) + "纳秒");
    		long startTimeRemoveal = System.nanoTime();
    		for(int i=999;i>=0;i--)
    		{
    			al.remove(i);
    		}
    		long endTimeRemoveal = System.nanoTime();
    		System.out.println("ArrayList删除1000个数据用时:" + (endTimeRemoveal - startTimeRemoveal) + "纳秒");
    
    		LinkedList<Integer> ll = new LinkedList<Integer>();
    		long startTimeAddll = System.nanoTime();
    		for(int i=0;i<1000;i++)
    		{
    			ll.add(i);
    		}
    		long endTimeAddll = System.nanoTime();
    		System.out.println("LinkedList添加1000个数据用时:" + (endTimeAddll - startTimeAddll) + "纳秒");
    		long startTimeRemovell = System.nanoTime();
    		for(int i=999;i>=0;i--)
    		{
    			ll.remove(i);
    		}
    		long endTimeRemovell = System.nanoTime();
    		System.out.println("LinkedList删除1000个数据用时:" + (endTimeRemovell - startTimeRemovell) + "纳秒");
    	}
    }
    

  • 相关阅读:
    HDU4366 Successor 线段树+预处理
    POJ2823 Sliding Window 单调队列
    HDU寻找最大值 递推求连续区间
    UVA846 Steps 二分查找
    HDU3415 Max Sum of MaxKsubsequence 单调队列
    HDU时间挑战 树状数组
    UVA10168 Summation of Four Primes 哥德巴赫猜想
    UESTC我要长高 DP优化
    HDUChess 递推
    HDU4362 Dragon Ball DP+优化
  • 原文地址:https://www.cnblogs.com/dengshiwei/p/4258494.html
Copyright © 2011-2022 走看看