• 对比数组、链表时间复杂度


    import java.util.ArrayList;
    import java.util.LinkedList;
    
    /**
     * Created by Roni on 2020/2/7.
     */
    public class Solution {
        public static void main(String[] args) {
    
            ArrayList arrayList = new ArrayList();
            LinkedList linkedList = new LinkedList();
    // ArrayList add
            long startTime = System.nanoTime();
            for (int i = 0; i < 100000; i++) {
                arrayList.add(i);
            }
            long endTime = System.nanoTime();
            long duration = endTime - startTime;
            System.out.println("ArrayList add:  " + duration);
    // LinkedList add
            startTime = System.nanoTime();
            for (int i = 0; i < 100000; i++) {
                linkedList.add(i);
            }
            endTime = System.nanoTime();
            duration = endTime - startTime;
            System.out.println("LinkedList add: " + duration);
    // ArrayList get
            startTime = System.nanoTime();
            for (int i = 0; i < 10000; i++) {
                arrayList.get(i);
            }
            endTime = System.nanoTime();
            duration = endTime - startTime;
            System.out.println("ArrayList get:  " + duration);
    // LinkedList get
            startTime = System.nanoTime();
            for (int i = 0; i < 10000; i++) {
                linkedList.get(i);
            }
            endTime = System.nanoTime();
            duration = endTime - startTime;
            System.out.println("LinkedList get: " + duration);
    // ArrayList remove
            startTime = System.nanoTime();
            for (int i = 9999; i >=0; i--) {
                arrayList.remove(i);
            }
            endTime = System.nanoTime();
            duration = endTime - startTime;
            System.out.println("ArrayList remove:  " + duration);
    // LinkedList remove
            startTime = System.nanoTime();
            for (int i = 9999; i >=0; i--) {
                linkedList.remove(i);
            }
            endTime = System.nanoTime();
            duration = endTime - startTime;
            System.out.println("LinkedList remove: " + duration);
        }
    }
    

    ArrayList add: 11386000
    LinkedList add: 4355200
    ArrayList get: 89200
    LinkedList get: 76741000
    ArrayList remove: 250221100
    LinkedList remove: 72771800

  • 相关阅读:
    window.top.location
    JS 退出系统并跳转到登录界面的实现代码
    CSS position 属性
    在网页中插入时间 自动更新
    CKeditor 配置使用
    使用JspSmart文件上传
    复制的web工程为什么不能部署到tomcat
    JDBC 4 PreparedStatement 与Statement 的区别
    每周会商自动化
    晚上的亲子时光
  • 原文地址:https://www.cnblogs.com/Roni-i/p/12274898.html
Copyright © 2020-2023  润新知