C++——时间复杂度

时间复杂度的估算

方法

时间复杂度十分的简单,但是在估算时有些需要注意的点还是要写

例如代码:

for (int i = 0; i < n; i++{int x;cin >> x;a[i] = x;
}

这段代码的时间复杂度是:O(n),当然在实际估算的时候也不需要太精确

常见的时间复杂度有这些:
O ( l o g ( n ) ) O(log(n)) O(log(n))
O ( s q r t ( n ) ) O(sqrt(n)) O(sqrt(n))
O ( n ) O(n) O(n)
O ( n 2 ) O(n^2) O(n2)
O ( n + m ) O(n+m) O(n+m)
O ( 1 ) O(1) O(1)
O ( l o g ( l o g ( n ) ) ) O(log(log(n))) O(log(log(n)))
O ( n × l o g ( n ) ) O(n\times log(n)) O(n×log(n))
O ( n × l o g ( l o g ( n ) ) ) O(n \times log(log(n))) O(n×log(log(n)))
也不多,在考试的时候基本都用得着

一般双重循环的就是 O ( n 2 ) O(n^2) O(n2)

三重循环就是 O ( n 3 ) O(n^3) O(n3)

一般考试的时候不考 O ( l o g ( n ) ) O ( l o g ( l o g ( n ) ) ) O ( n × l o g ( n ) ) O ( n × l o g ( l o g ( n ) ) ) O(log(n)) \ O(log(log(n))) \ O(n \times log(n)) O(n \times log(log(n))) O(log(n)) O(log(log(n))) O(n×log(n))O(n×log(log(n)))

但是还是要知道

排序算法时间复杂度:
冒泡排序(Bubble Sort): 平均时间复杂度为 O(n^2)
选择排序(Selection Sort): 平均时间复杂度为 O(n^2)
插入排序(Insertion Sort): 平均时间复杂度为 O(n^2)
快速排序(Quick Sort): 平均时间复杂度为 O(nlogn),在最坏情况下会退化到 O(n^2)
归并排序(Merge Sort): 平均时间复杂度为 O(nlogn)
堆排序(Heap Sort): 平均时间复杂度为 O(nlogn)

举一反三

给出以下函数,请推算出平均时间复杂度:

bool judge(int n)
{for (int i = 2; i*i < n; i++){if (n % i == 0){return false;}}return true;
}

答案:
平均时间复杂度为 O ( s q r t ( n ) ) O(sqrt(n)) O(sqrt(n))

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jupyter部署和使用教程

在本教程中&#xff0c;我们将探讨如何部署Jupyter Notebook&#xff0c;它是一个开源的、基于Web的交互式计算环境&#xff0c;用于创建Jupyter笔记本文档。Jupyter支持超过40种编程语言&#xff0c;包括Python、R、Julia和Scala。 一、Jupyter Notebook介绍 Jupyter Notebo…

Docker:利用Docker搭建一个nginx服务

文章目录 搭建一个nginx服务认识nginx服务Web服务器反向代理服务器高性能特点 安装nginx启动nginx停止nginx查找nginx镜像拉取nginx镜像&#xff0c;启动nginx站点其他方式拉取nginx镜像信息通过 DIGEST 拉取镜像 搭建一个nginx服务 首先先认识一下nginx服务&#xff1a; NGI…

Python面试宝典:Python中与数据处理与清洗相关的面试笔试题(1000加面试笔试题助你轻松捕获大厂Offer)

Python面试宝典:1000加python面试题助你轻松捕获大厂Offer【第二部分:Python高级特性:第二十六章:Python与数据科学:第二节:数据处理与清洗】 第二十六章:Python与数据科学第二节:数据处理与清洗1. 数据处理工具1.1 Pandas1.2 NumPy2. 数据清洗工具2.1 处理缺失值2.2 数…

04-认识微服务-SpringCloud

04-认识微服务-SpringCloud 1.SpringCloud&#xff1a; 1.SpringCloud是目前国内使用最广泛的微服务框架。官网地址&#xff1a;https://spring.io/projects/spring-cloud 2.SpringCloud集成了各种微服务功能组件&#xff0c;并基于SpringBoot实现了这些组件的自动装配&…

SpringCloud-面试篇(二十四)

&#xff08;1&#xff09;Nacos如何支撑数十万服务注册的压力 小型企业来讲nacos压力没有那么大&#xff0c;但是想阿里&#xff0c;服务的数量可能会达到数万&#xff0c;那麽多的服务。当服务原来越多时&#xff0c;除了服务注册以外&#xff0c;还有服务的定时更新&#x…

自养号测评防关联的关键点解析, 确保店铺权重和买家账号的安全稳定

现在很多大卖都是自己管理几百个账号&#xff0c;交给服务商不是特别靠谱。你不知道服务商账号质量怎么样&#xff0c;账号一天下了多少你也不清楚&#xff0c;如果下了很多单万一封号被关联了怎么办&#xff0c;你也不知道服务商用什么卡给你下单&#xff0c;用一些低汇率和黑…

C# 共享内存

共享内存定义 共享内存&#xff08;Shared Memory&#xff09;是一种进程间通信&#xff08;IPC&#xff09;机制&#xff0c;通过它&#xff0c;多个进程可以访问同一块内存&#xff0c;从而实现高效的数据共享和通信。这种方式比其他IPC机制&#xff08;如管道、消息队列&am…

Redis的基本数据类型

基本的数据类型包括: 字符串、列表、哈希、集合、有序集合 拓展的数据类型包括: bitmaps位图 hyperloglog基数估计算法 geo 地理位置 streams 流 字符串 字符串经常用来存储单个值&#xff0c;用户信息、商品信息等或者二进制的数据。 字符串是基于SDS动态字符串来实现的&a…

一个简单好用的 C# Easing Animation 缓动动画类库

文章目录 1.类库说明2.使用步骤2.1 创建一个Windows Form 项目2.2 安装类库2.3 编码2.4 效果 3. 扩展方法3.1 MoveTo 动画3.2 使用回调函数的Color动画3.3 属性动画3.4 自定义缓动函数 4.该库支持的内置缓动函数5.代码下载 1.类库说明 App.Animations 类库是一个很精炼、好用的…

DeepSORT(目标跟踪算法)中的计算观测值与状态估计的马氏距离

DeepSORT&#xff08;目标跟踪算法&#xff09;中的计算观测值与状态估计的马氏距离 flyfish 在目标跟踪中&#xff0c;使用马氏距离可以帮助判断某个观测值是否与当前的状态估计一致。 gating_distance 是一个方法&#xff0c;用于计算状态分布和观测值之间的门限距离&#…

Django ORM的QuerySet:解锁数据库交互的魔法钥匙

用到此篇文章知识的几篇文章&#xff1a; Django ORM实战&#xff1a;模型字段与元选项配置&#xff0c;以及链式过滤与QF查询详解Django API开发实战&#xff1a;前后端分离、Restful风格与DRF序列化器详解 文章目录 前言一、什么是QuerySet&#xff1f;二、QuerySet 的用途三…

Latex详细教程——图片、表格、公式

一、图片 1、占地一栏普通图片 使用figure环境&#xff0c;[thpb]表示希望在文中占地的优先级&#xff0c;[t] ~ top&#xff0c;顶部&#xff1b;[h] ~ here&#xff0c;当前位置&#xff1b;[p] ~ page of its own&#xff0c;浮动页&#xff1b;[b] ~ bottom&#xff0c;底…

Dell服务器根据GPU温度调整风扇转速

前言 dell服务器自动风扇是根据CPU温度来调速的&#xff0c;我跑AI的时候cpu温度不高但是GPU温度很高导致显卡卡死PVE虚拟机直接挂起无法运行&#xff0c;我看了下也没有基于显卡温度调速的脚本&#xff0c;于是我就自己写了一个 基于ipmi工具 乌班图等linux先安装ipmi apt …

GPT-4o:人工智能新贵的崭露头角

近日&#xff0c;OpenAI 推出了 GPT-4o&#xff0c;这一新一代的人工智能技术引起了广泛的关注和讨论。本文将对 GPT-4o 进行评价&#xff0c;包括与之前版本的对比分析、技术能力以及个人整体感受等方面。 1. 版本间的对比分析 GPT-4o 是 GPT 系列的最新版本&#xff0c;相较…

搭建vauditdemo靶场mysql为NO问题

一、问题 在搭建vauditdemo时&#xff0c;遇到如下显示问题&#xff1a; mysql版本检测为NO 二、解决 查找该方面问题时&#xff0c;并没有找到解决方法 然后换mysql版本换了五六个也没有解决问题 问了AI后给的答复有一条为将mysql改为mysqli 修改保存后解决问题 步骤如…

二分【1】二分查找框架 查找指定元素

目录 二分查找 基本思想 几种情况汇总 一。严格递增序列 1.查找本身 2.查找第一个大于等于自己的 3.查找第一个大于自己的 4.严格递减序列 二。有重复元素 1.取其中第一个出现的 2.取其中最后一个出现的 二分查找 基本思想 几种情况汇总 一。严格递增序列 1.查找本身…

QT 使用opencv 打开usb相机

1.在.pro文件中 添加opencv的头文件与lib 库 INCLUDEPATH D:\opencv\build\install\include LIBS D:\opencv\build\install\x64\mingw\lib\libopencv_*.a LIBS D:\opencv\build\install\x64\mingw\bin\libopencv_*.dll 2. usb相机类的头文件usbCamera.h #ifndef USBCAM…

QNX Hypervisor详细介绍

标签: QNX Hypervisor; Hypervisor; QNX Hypervisor是当前主流的满足车规级的虚拟机产品,这方面高通和QNX高度绑定,“QQ”(Qualcomm+QNX)组合在智能座舱领域占比高达90%以上。 什么是QNX Hypervisor? QNX Hypervisor是由BlackBerry旗下的QNX软件系统公司开发的一种虚…

作业-day-240607

思维导图 C编程 要求&#xff1a; 搭建一个货币的场景&#xff0c;创建一个名为 RMB 的类&#xff0c;该类具有整型私有成员变量 yuan&#xff08;元&#xff09;、jiao&#xff08;角&#xff09;和 fen&#xff08;分&#xff09;&#xff0c;并且具有以下功能&#xff1a;…

模板显式、隐式实例化和(偏)特化、具体化的详细分析

最近看了<The C Programing Language>看到了模板的特化&#xff0c;突然想起来<C Primer>上说的显式具体化、隐式具体化、特化、偏特化、具体化等概念弄得头晕脑胀&#xff0c;我在网上了找了好多帖子&#xff0c;才把概念给理清楚。 看着这么多叫法&#xff0c;其…