private static void method2() {
long start = System.currentTimeMillis();
int result = 0;
for (int i = 0; i < MAX2; i++) {
int number = i * 10;
int value = count(number);
for (int j = 0; j < 10; j++) {
result += value;
if (j == 1) {
result++;
}
int x = number + j;
if (x != 0 && result == x) {
System.out.println("Find " + x + ", " + (System.currentTimeMillis() - start) + "ms");
}
}
}
}
public static void main(String[] args) {
method1();
method2();
}
}
运算结果:
Find 1, 0ms
Find 199981, 47ms
Find 199982, 47ms
Find 199983, 47ms
Find 199984, 47ms
Find 199985, 47ms
Find 199986, 47ms
Find 199987, 47ms
Find 199988, 47ms
Find 199989, 47ms
Find 199990, 47ms
Find 200000, 47ms
Find 200001, 47ms
Find 1599981, 454ms
Find 1599982, 454ms
Find 1599983, 454ms
Find 1599984, 454ms
Find 1599985, 454ms
Find 1599986, 454ms
Find 1599987, 454ms
Find 1599988, 454ms
Find 1599989, 454ms
Find 1599990, 454ms
Find 2600000, 766ms
Find 2600001, 766ms
Find 13199998, 4204ms
Find 1, 0ms
Find 199981, 0ms
Find 199982, 0ms
Find 199983, 0ms
Find 199984, 0ms
Find 199985, 0ms
Find 199986, 0ms
Find 199987, 0ms
Find 199988, 0ms
Find 199989, 0ms
Find 199990, 0ms
Find 200000, 0ms
Find 200001, 0ms
Find 1599981, 62ms
Find 1599982, 62ms
Find 1599983, 62ms
Find 1599984, 62ms
Find 1599985, 62ms
Find 1599986, 62ms
Find 1599987, 62ms
Find 1599988, 62ms
Find 1599989, 62ms
Find 1599990, 62ms
Find 2600000, 93ms
Find 2600001, 93ms
Find 13199998, 515ms
同样以1319998为例,前者花费的时间是后者的8倍以上,因为每10个数,我们只需要计算一次1的个数,所以差不多只需要1/10的时间,但是后者的逻辑比较复杂一些,多了一些中间变量的使用,并且多了一个判断条件。
如果你不具备深厚的数学功底,对于算法并不精通,有时候对问题进行简单分析就可能大幅度的提高性能。
相关推荐
前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; ...
rabbitmq面试:RabbitMQ相关的面试题和问题解析 rabbitmq面试:RabbitMQ相关的面试题和问题解析 rabbitmq面试:RabbitMQ相关的面试题和问题解析 rabbitmq面试:RabbitMQ相关的面试题和问题解析 rabbitmq面试:...
性能测试面试题宝典--覆盖大部分性能专项面试题性能测试面试题宝典--覆盖大部分性能专项面试题性能测试面试题宝典--覆盖大部分性能专项面试题性能测试面试题宝典--覆盖大部分性能专项面试题性能测试面试题宝典--覆盖...
性能测试工程师面试题是指性能测试工程师在面试过程中遇到的常见问题,涵盖了性能测试的基础知识、LoadRunner 的使用、场景设置、脚本录制、参数设置、关联机制、调试技巧等多个方面。 1. 负载测试和性能测试的区别...
Google面试题集锦 在当今社会,Google作为全球顶尖的科技公司,其招聘流程和面试题一直备受业界关注。公司的面试流程设计严谨,面试题目覆盖面广泛,既考察应聘者的基本技术知识,又深挖其逻辑思维能力、创造力以及...
《微软面试 100 题系列》、《BAT 机器学习面试 1000 题系列》、《名企 AI 面试 100 题》以及《2021 最新大厂 AI 面试题》等题库,不仅覆盖了AI领域的多个方向,而且提供了详细的答案和解析,有助于求职者深入理解...
- 测试数据分析:分析测试结果,评估系统性能。 **LoadRunner并发测试** LoadRunner支持IP伪装、集合点和多机器分布,以模拟真实并发。集合点失败会导致相关操作取消,影响测试的完整性。 **性能测试关注点** - *...
文档“python面试题搜集(六):110道Python面试题(上).md”和“python面试题搜集(六):史上最全python面试题详解(三).md”可能包含更多实战性问题,涉及Python性能优化、并发编程、设计模式以及Python与其他...
【需求分析师面试题】知识点详解: 1. 需求收集与分析: 需求分析师在面试中经常被问及如何有效地收集需求。这涉及到与不同干系人的沟通技巧,包括用户、管理层、技术人员等,理解他们的期望和问题。面试者应展示...
大数据面试题V3.0完成了。共523道题,679页,46w+字,来源于牛客870+篇面经。 主要分为以下几部分: Hadoop面试题:100道 Zookeeper面试题:21道 Hive面试题:47道 Flume面试题:11道 Kafka面试题:59到 HBase面试题...
JavaOOP面试题 Java集合/泛型面试题 Java异常面试题 Java中的IO与NIO面试题 Java反射面试题 Java序列化面试题 Java注解面试题 多线程&并发面试题 JVM面试题 Mysql面试题 Redis面试题 Memcached面试题 MongoDB面试题 ...
Java面试题-每日一题:String、StringBuffer、StringBuilder的区别
面试题包含了不同技术层面的面试问题,同时也能对一些没有面试开发经验的小白给予不可估量的包装, 让你的薪水绝对翻倍, 本人亲试有效.Java面试题84集、java面试专属及面试必问课程,所有的面试题有视屏讲解, 解答方案....
172份,7701页互联网大厂面试题 172份,7701页互联网大厂面试题 172份,7701页互联网大厂面试题
Java作为一门广泛使用的编程语言,其面试题涵盖了众多领域,包括基础、并发编程、网络、虚拟机、大数据处理以及各种框架。以下是对这些面试题集合的详细解析: 1. **BIO, NIO, AIO, Netty面试题 35道**: - **BIO*...
iOS开发试题大全:笔试面试一千题,包含1000道iOS试题和参考答案。其中笔试题600条,面试题400条。 题型包含:判断题、单选题,多选题和面试题。这套资料共分为"语法","常识","界面","iOS","操作","数据结构","多...
最新JAVA面试题总结之基础/框架/数据库/JavaWeb/Redis BIO,NIO,AIO,Netty面试题 35道 BTA 常问的 Java基础39道常见面试题及详细答案 Dubbo面试题 47道 ElasticSearch面试题 30道 Git常用命令面试题 60道 Java并发...
5、C语言面试题大汇总之华为面试题.txt 6、C语言面试题大汇总之微软亚洲技术中心面试题.txt 7、c语言面试题及答案_1.txt 8、面试题.htm 9、求职笔试面试大全.htm 10、如何回答十个最棘手的面试问题.htm 11、英语面试...
模拟IC面试题 analog面试题.doc 在这个模拟IC面试题中,我们可以总结出以下几个重要的知识点: 1. Op-Amp 结构比较 在这个问题中,我们需要比较三种不同的 Op-Amp 结构:2-stage op-amp (active load, class-A ...
互联网校招题库资料笔试面试真题具体面试问题回答技巧腾讯阿里培训资料: C++面试题笔试题 C语言 IQ智力面试题笔试题 JAVA笔试面试资料 NET面试题笔试题 web开发 数据库面试题笔试题 算法 数据结构 计算机基础 计算机...