彻底理解程序为什么会超时
文章目录
- 超时是怎么回事
- 从硬件配置看计算机的性能
- 做个试验测一下计算机的运行速度
- 总结
一些同学可能对计算机运行的速度没有概念
可能就是感觉计算机运行速度应该会很快
那么我们在做算法题目的时候为什么会超时呢?
我们的计算机究竟1s可以计算多少次呢?
接下来我们来探讨一下这几个问题。
超时是怎么回事
大家刷leetcode时候应该都遇到过知一种错误是超时
也就是说程序运行的时间超过了规定的时间,而leetcode并没说程序运行了多久超时,也没有说超时时间具体是多少
一般现在判题系统的超时时间就是1s,其他OJ呢,例如POJ 或者ZOJ 超时时间都基本上都是1s
也就是用例数据输入后最多要1s内得到结果,leetcode 应该也是1s左右(leetcode上可能每道题限制会有所不同)。
下文为了方便讲解,暂定超时时间就是1s
接下来我们要知道我们的代码为什么会超时的
也就是如果我们写出了一个O(n)的算法 ,我们其实可以估算出来n是多大的时候,我们算法的执行之间就会超过1s
如果知道n的规模已经足够让O(n)的算法运行时间超过了1s,此时我们
彻底理解程序为什么会超时相关推荐
- 微信小程序设置请求超时wx.request等,简单易懂!
微信小程序设置请求超时wx.request等 一.用到的方法: 个人理解,比较粗糙 看不懂可以百度一下具体用法 new Promise:new了一个函数或者方法,可以被Promise.race等方法调 ...
- 交换两个变量ab的值PHP,由[交换两个变量的值问题]理解程序的时空复杂度
由一个编程经典问题,交换两个变量的值入手,理解程序的时空复杂度(以下均使用PHP代码演示问题的解决方法)解决问题的方法一:1.方法文字描述:使用一个中间变量temp,实现两个变量值的互换2.实现的具体 ...
- book1复习 使用java理解程序逻辑
book1复习 使用java理解程序逻辑 第一章 初识Java 开发步骤 编写源代码 编译源文件 运行 基本命令 输出内容:1,输出换行. 2,输出不换行 输入内容:获得键盘的输入 注释 单行注释 多 ...
- 题库明细 使用java理解程序逻辑
题库明细 使用java理解程序逻辑 初识java 变量.数据类型和运算符 选择结构(一) 选择结构(二) 循环结构(一) 循环结构(二) 数组 循环结构进阶 类和对象 类的无参方法 带参数的方法 字符 ...
- Scratch3.0——助力新进程序员理解程序(案例一、画画的蝴蝶)
Scratch3.0--助力新进程序员理解程序(案例一.画画的蝴蝶) 前言 一般来说,针对6-18岁的少年儿童开展的编程教育,现在,最常见的形式是线上和线下模式相结合的课外培训. 这里我用作让大朋友们 ...
- Scratch3.0——助力新进程序员理解程序(案例八、等差数列计算1)
Scratch3.0--助力新进程序员理解程序(案例八.等差数列计算1) 前言 一般来说,针对6-18岁的少年儿童开展的编程教育,现在,最常见的形式是线上和线下模式相结合的课外培训. 这里我用作让大朋 ...
- Scratch3.0——助力新进程序员理解程序(案例九、等差数列2)
Scratch3.0--助力新进程序员理解程序(案例九.等差数列2) 前言 一般来说,针对6-18岁的少年儿童开展的编程教育,现在,最常见的形式是线上和线下模式相结合的课外培训. 这里我用作让大朋友们 ...
- Scratch3.0——助力新进程序员理解程序(一、基础使用与运动)
Scratch3.0--助力新进程序员理解程序(一.基础使用与运动) 目录 Scratch3.0--助力新进程序员理解程序(一.基础使用与运动) 前言 环境 下载地址 安装说明 1.菜单栏 2.功能栏 ...
- Scratch3.0——助力新进程序员理解程序(难度案例一、节奏大师)
Scratch3.0--助力新进程序员理解程序(难度案例一.节奏大师) 目录 Scratch3.0--助力新进程序员理解程序(难度案例一.节奏大师) 前言 环境 下载地址 安装说明 1.菜单栏 2.功 ...
- Scratch3.0——助力新进程序员理解程序(十二、画笔)
Scratch3.0--助力新进程序员理解程序(十二.画笔) 目录 Scratch3.0--助力新进程序员理解程序(十二.画笔) 前言 环境 下载地址 安装说明 1.菜单栏 2.功能栏 3.代码区 4 ...
最新文章
- 【大数据】Zookeeper学习笔记
- vs2013编译win-32位下的libevent-2.0.21-stable,debug版本
- Python爬取小说网站下载小说
- dubbo之rmi协议使用
- ros control
- uvalive3983Robtruck
- Linux基础----gcc工具的使用
- centos 7下搭建wiki系统
- 北京今年将新建提升1000个生活性服务业网点
- 自动化测试到底怎么做(单元测试自动化,接口自动化,UI自动化)
- 前端开发:v-if和v-for的优先级详解
- 苹果手机输入屏保后锁屏_iPhone丢失后锁屏显示你的联系方式方法教程
- 51nod 基础题题解(全)
- CF 666E 题解
- 如何订到超便宜的机票
- 如何给自己制订一个“可实现的”新年目标?
- 开源高星精选,10个2022企业级Python测试项目,再不学习今年就没了
- 利用飞秋的udp用java语言进行震动攻击
- mysql ssd inodb,技术译文 | MySQL 8 需要多大的 innodb_buffer_pool_instances 值(上)
- 最新优优博客系统2.5版/THinkphp5.0开源个人博客系统+多语言