当前位置: 首页 > article >正文

算法时间复杂度和真实时间测算

一维度循环 1后面9个0

public class Main {
    public static void main(String[] args) {
        long l1 = System.currentTimeMillis();

        long x = 0;
        long N = (long) 1e9;
        for (long i = 0; i < N; i++) {
            if (i % 2 == 0) {
                x += i;
            } else {
                x -= i;
            }
        }
        long l2 = System.currentTimeMillis();
        System.out.println(l2 - l1);
    }
}

二维循环

public class Main {
    public static void main(String[] args) {
        long l1 = System.currentTimeMillis();

        long x = 0;
        for (long i = 0; i < 10000; i++) {
            for (long j = 0; j < 100000; j++) {
                x = x+i+j;
            }
        }
        long l2 = System.currentTimeMillis();
        System.out.println(l2 - l1);
    }
}

三维循环

public class Main {
    public static void main(String[] args) {
        long l1 = System.currentTimeMillis();

        long x = 0;
        for (long i = 0; i < 1000; i++) {
            for (long j = 0; j < 1000; j++) {
                for (long k = 0; k < 1000; k++) {
                    x = x + i - j + k;
                }
            }
        }
        long l2 = System.currentTimeMillis();
        System.out.println(l2 - l1);
    }
}

快速排序

public class Main {
    public static void main(String[] args) {
        int N = 39620077; // 数组长度
        int[] randomArray = new int[N];

        Random random = new Random();

        // 填充数组
        for (int i = 0; i < N; i++) {
            randomArray[i] = random.nextInt(); // 生成随机整数
        }

        long l1 = System.currentTimeMillis();
        Arrays.sort(randomArray);
        long l2 = System.currentTimeMillis();
        System.out.println(l2 - l1);

    }
}

2^N=1000000000, N 约等于 29.90 , 29还行,30,31,32都不行


http://www.kler.cn/a/382716.html

相关文章:

  • C语言 | Leetcode C语言题解之第541题反转字符串II
  • CST汽车天线仿真(双向混合求解)
  • 详解:字符串常量池
  • MySQL45讲 第十讲 MySQL为什么有时候会选错索引?
  • docker搭建guacamole,web远程桌面
  • [Web安全 网络安全]-DoS(拒绝服务攻击)和DDoS(分布式拒绝服务攻击)
  • 枚举,联合(共用体)
  • 前后端跨域联调
  • SpringBooot之事务失效的场景
  • 护肤品类电商代运营的公司介绍与分析
  • 【Docker】X-DOC:使用WSL在Windows中体验Linux发行版安装桌面版Docker
  • 在 MacOS 上跑 kaldi
  • Java+控制台 商城销售系统
  • 【动态规划 数学】2745. 构造最长的新字符串|1607
  • Web Workers 学习笔记
  • 【QT】Qt文件和多线程
  • SSLHandshakeException错误解决方案
  • Flutter常用命令整理
  • Halcon 矫正图像 图像矫正
  • CustomDataSource、Entity 和 Primitive 区别
  • MongoDB笔记02-MongoDB基本常用命令
  • 小程序 + AI 自动直播:一部手机开启抖音挂载小程序流量主变现之旅
  • 搭建react项目
  • Markdown转HTML
  • 前深度学习时代-经典的推荐算法
  • 《JVM第7课》堆区