拿捏算法的复杂度

目录

前言 

一:算法的时间复杂度

1.定义

2.简单的算法可以数循环的次数,其余需要经过计算得出表达式

3.记法:大O的渐近表示法

表示规则:对得出的时间复杂度的函数表达式,只关注最高阶,其余项和最高阶的系数皆忽略;常数次均有O(1)表示

量级:O(N*N),O(N),O(1),O(2^N),O(logN),O(N*logN)

4.经典实例

二:算法的空间复杂度 

1.概念

2.经典实例


接下来的日子会顺顺利利,万事胜意,生活明朗-----------林辞忧 

前言 

当我们写程序尤其是写OJ题时常常会看见要求时间复杂度和空间复杂度。其实评价一个算法好不好,常常从时间复杂度和空间复杂度两个方面说起,时间复杂度简单来说就是衡量程序跑的快不快空间复杂度就是程序运行时占用空间的大小两个均为数学函数表达式,接下来将详细介绍

一:算法的时间复杂度

1.定义

算法的时间复杂度是一个程序中语句的执行次数关于问题规模的数学函数表达式,通过表达式来确定时间复杂度的量级

2.简单的算法可以数循环的次数,其余需要经过计算得出表达式

3.记法:大O的渐近表示法

表示规则:对得出的时间复杂度的函数表达式,只关注最高阶,其余项和最高阶的系数皆忽略;常数次均有O(1)表示
量级:O(N*N),O(N),O(1),O(2^N),O(logN),O(N*logN)

如:经过计算得出的时间复杂度的函数表达式为F(N)=2*n*n+7*n+3,只关注最高阶则用大O表示法就是O(N*N)

4.经典实例

1.

对于这种较复杂的我们就不能简单数循环,而是要经过计算

 

 

2.

 

对于递归的我们就要画递归展开图 ,每次调用递归展开时间复杂度都是常数次O(1)

3.

 

 

二:算法的空间复杂度 

1.概念

同时间复杂度,主要统计另外开辟变量的个数

2.经典实例

三:分享到此结束

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/443151.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Halcon基本语法

Halcon是什么? Halcon(全称为Halcon Imaging Library)是由德国MVTec Software GmbH开发的一套功能强大的机器视觉软件库。Halcon提供了丰富的图像处理和机器视觉算法,用于解决各种工业和科学领域中的视觉检测、识别和测量等问题。…

python数据结构--栈

栈简介 栈类似于一个箱子,我们向里面放书,我们最先放进去的书是在最底下的,所以我们想要拿出来就只能最后一个拿出来,每次放和取都只能操作最上面那个。 特点:先进后出 名词概念:进栈(放书&a…

掌握Java建造者模式:逐步构建复杂对象的艺术与实践

建造者模式的主要目的是将一个复杂对象的构建过程封装起来,使得客户端代码不需要知道对象创建的细节。这种模式特别适用于那些具有多个组成部分、创建过程复杂、对象属性多且大多数属性可选的场合。 在Java中,建造者模式通常涉及以下几个角色&#xff1…

Day29:安全开发-JS应用DOM树加密编码库断点调试逆向分析元素属性操作

目录 JS原生开发-DOM树-用户交互 JS导入库开发-编码加密-逆向调试 思维导图 JS知识点: 功能:登录验证,文件操作,SQL操作,云应用接入,框架开发,打包器使用等 技术:原生开发&#x…

SLAM|初识SLAM

在空间中,人可以通过固定不动的事物来作为参考系中的参照物。 而这些固定不动的东西可以称之为特征,空间可以理解成特征存在的空间。 而参照物的意义,可以变成是看到某某参照物,就按这个某某参照物进行位置移动。 比如说碰到这个…

【SQL】550. 游戏玩法分析 IV (关键点:确定连续两次登录)

前述 常见函数用法示例: DATEDIFF(col1, col2) 1DATE_ADD(MIN(col), INTERVAL 1 DAY)ROUND(3.1415926,3) > 四舍五入得到 3.142 题目描述 leetcode原题:550. 游戏玩法分析 IV 思路 确定连续两次登录统计,保留两位小数 写法一 关键…

【Tauri】(4):使用Tauri1.5版本+candle框架运行大模型,前后的搭建运行成功,整合前端项目,在应用中显示。

1,视频地址 关于tauri 框架 2,搭建rust 环境 # 设置服务器国内代理: export RUSTUP_DIST_SERVER"https://rsproxy.cn" export RUSTUP_UPDATE_ROOT"https://rsproxy.cn/rustup"# 设置环境变量 export RUSTUP_HOME/data/…

【Haproxy】Haproxy的配置和应用

HAProxy介绍 HAProxy是法国开发者威利塔罗(Willy Tarreau)在2000年使用C语言开发的一个开源软件,是一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计&a…

HCIA-HarmonyOS设备开发认证V2.0-习题2

目录 习题一习题二坚持就有收获 习题一 # 判断题## 1.PWM占空比指的是低电平时间占周期时间的百分比。(错误)正确(True)错误(False)解题: - PWM占空比指的是高电平时间占周期时间的百分比## 2.UART是通用异步收发传输器,是通用串行数据总线,…

微服务技术栈SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式(四):消息队列MQ

文章目录 一、消息队列MQ二、RabbitMQ2.1 单机部署2.2 消息模型 三、SpringAMAP3.1 简单消息队列3.2 工作消息队列3.3 发布-订阅模型:FanoutExchange 广播交换机3.4 发布-订阅模型:DirectExchange 路由交换机3.5 发布-订阅模型:TopicExchange…

Ubuntu平铺左、右、上、下、1/2、1/4窗口(脚本)

前言 之前因为一直在用Ubuntu 18或者Ubuntu 20然后发现装了GNOME插件后,电脑在使用过程中,会时不时的卡死(鼠标没问题,键盘输入会有10-20秒的延迟)频率基本是一小时一次,因为这种卡顿会很容易打断思路&…

【职言】三年功能测试,一些测试工作的“吐槽”

以下为作者观点: 概述 作为功能测试,我也分享下日常工作中功能测试值得吐槽的问题,由于工作时间不长且未进过大厂,不了解大公司的工作模式和流程,所以自己的方法和理解都是基于中小公司的工作经验总结,应…

Linux 之五:权限管理(文件权限和用户管理)

1. 文件权限 在Linux系统中,文件权限是一个非常基础且重要的安全机制。它决定了用户和用户组对文件或目录的访问控制级别。 每个文件或目录都有一个包含9个字符的权限模式,这些字符分为三组,每组三个字符,分别对应文件所有者的权限…

2024蓝桥杯每日一题(差分)

一、第一题:空调 解题思路:差分 希望P减掉T后就相当于从0到New_P,想到得到New_P只需要对全0数组进行若干次区间加操作,所以只需要对New_P数组进行差分,累加正数和负数,哪个绝对值大答案就是那个。 …

【深度学习笔记】6_8 长短期记忆(LSTM)

注:本文为《动手学深度学习》开源内容,部分标注了个人理解,仅为个人学习记录,无抄袭搬运意图 6.8 长短期记忆(LSTM) 本节将介绍另一种常用的门控循环神经网络:长短期记忆(long shor…

二叉树的先序遍历详解(小白也懂)(附带中序,后序代码)

文章目录 二叉树的先序遍历(分而治之思想)样例图函数的递归调用源代码运行结果 二叉树的先序遍历(分而治之思想) 代码在文章底部。 先序遍历又叫先根遍历,顾名思义:遍历顺序为根,左子树,右子树。 样例图 本文将对以下二叉树进…

关于 JVM

1、请你谈谈你对JVM的理解? JVM由JVM运行时数据区(图示中蓝色框包含部分)、执行引擎、本地库接口、本地方法库组成。 JVM运行时数据区,分为方法区、堆、虚拟机栈、本地方法栈和程序计数器。 1.方法区 Java 虚拟机规范中定…

YOLOv8-Seg改进:SPPF涨点篇 |引入YOLOv9的SPPELAN

🚀🚀🚀本文改进:SPP创新结合ELAN,来自于YOLOv9,助力YOLOv8,将SPPELAN代替原始的SPPF 🚀🚀🚀YOLOv8-seg创新专栏:http://t.csdnimg.cn/KLSdv 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研; 1)手把手教你如何训练YOLOv8-seg; 2)模型创新,提升分割…

day59 线程

创建线程的第二种方式 实现接口Runnable 重写run方法 创建线程的第三种方式 java.util.concurrent下的Callable重写call()方法 java.util.concurrent.FutureTask 创建线程类对象 获取返回值 线程的四种生命周期 线程的优先级1-10 default为5,优先级越高&#xff0c…

JavaEE进阶(15)Spring原理:Bean的作用域、Bean的生命周期、Spring Boot自动配置(加载Bean、SpringBoot原理分析)

接上次博客:JavaEE进阶(14)Linux基本使用和程序部署(博客系统部署)-CSDN博客 目录 关于Bean的作用域 概念 Bean的作用域 Bean的生命周期 源码阅读 Spring Boot自动配置 Spring 加载Bean 问题描述 原因分析 …