更新 时间复杂度 O(n)超时 拍版格式修复

This commit is contained in:
jinbudaily
2023-07-27 14:12:11 +08:00
parent 0dc6bb5669
commit 7c9fcfe09d
2 changed files with 10 additions and 28 deletions

View File

@ -13,7 +13,7 @@
计算机究竟1s可以执行多少次操作呢 接下来探讨一下这个问题。
# 超时是怎么回事
## 超时是怎么回事
![程序超时](https://code-thinking-1253855093.file.myqcloud.com/pics/20200729112716117.png)
@ -25,7 +25,7 @@
如果n的规模已经足够让O(n)的算法运行时间超过了1s就应该考虑log(n)的解法了。
# 从硬件配置看计算机的性能
## 从硬件配置看计算机的性能
计算机的运算速度主要看CPU的配置以2015年MacPro为例CPU配置2.7 GHz Dual-Core Intel Core i5 。
@ -44,7 +44,7 @@
所以我们的程序在计算机上究竟1s真正能执行多少次操作呢
# 做个测试实验
## 做个测试实验
在写测试程序测1s内处理多大数量级数据的时候有三点需要注意
@ -155,7 +155,7 @@ O(nlogn)的算法1s内大概计算机可以运行 2 * (10^7)次计算,符
至于O(log n)和O(n^3) 等等这些时间复杂度在1s内可以处理的多大的数据规模大家可以自己写一写代码去测一下了。
# 完整测试代码
## 完整测试代码
```CPP
#include <iostream>
@ -212,7 +212,7 @@ int main() {
```
# 总结
## 总结
本文详细分析了在leetcode上做题程序为什么会有超时以及从硬件配置上大体知道CPU的执行速度然后亲自做一个实验来看看O(n)的算法跑一秒钟这个n究竟是做大最后给出不同时间复杂度一秒内可以运算出来的n的大小。
@ -220,17 +220,6 @@ int main() {
这样,大家应该对程序超时时候的数据规模有一个整体的认识了。
## 其他语言版本
Java
Python
Go
@ -238,3 +227,4 @@ Go
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
</a>

View File

@ -8,6 +8,8 @@
所以重新整理的时间复杂度文章,正式和大家见面啦!
# 时间复杂度
## 究竟什么是时间复杂度
**时间复杂度是一个函数,它定性描述该算法的运行时间**
@ -145,7 +147,7 @@ O(2 × n^2 + 10 × n + 1000) < O(3 × n^2),所以说最后省略掉常数项
**当然这不是这道题目的最优解,我仅仅是用这道题目来讲解一下时间复杂度**
# 总结
## 总结
本篇讲解了什么是时间复杂度复杂度是用来干什么以及数据规模对时间复杂度的影响
@ -157,17 +159,6 @@ O(2 × n^2 + 10 × n + 1000) < O(3 × n^2),所以说最后省略掉常数项
如果感觉代码随想录很不错赶快推荐给身边的朋友同学们吧他们发现和代码随想录相见恨晚
## 其他语言版本
Java
Python
Go
@ -175,3 +166,4 @@ Go
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
</a>