当前位置: 首页 > news >正文

C++枚举法(二)

学习目标时间复杂度的类型、比较时间复杂度的计算方法枚举法的练习计算机发展过程(一)第一代计算机(1946年-1958年)采用的物理器件是电子管。内存采用延迟线或磁芯,外存为纸带、卡片或磁带,工作速度几千~几万次/秒,软件采用机器语言或汇编语言编写,主要应用于科学计算。代表机型ENIAC。第二代计算机(1958年-1964年)采用的物理器件是晶体管,内存为磁芯,外存是磁带或磁盘,工作速度几十万次/秒,软件用高级语言编写,应用于科学计算及工业控制,代表机型IBM700系列。时间复杂度●我们用时间复杂度表示一个算法的时间效率●时间复杂度分析统计的不是算法运行时间●而是算法运行时间随着数据量变大时的增长趋势● 所以时间复杂度又叫渐进时间复杂度●通常会使用大O记号(big O)常数时间复杂度O(1)intn;cinn;intN=100000;for(inti=0;iN;++i){cout"hello world\n";举个例子输入n不影响循环次数代码的执行时间恒定,不随着输入值n的变化而变化这段代码的时间复杂度就是O(1)O(1)可读作“时间复杂度为1”,也叫常数时间复杂度线性时间复杂度 O(n)循环n次 循环 n 次 举个例子intn;cinn;for(inti=0;in;++i)cout"hello world\n";循环次数由n的大小决定 上面这段代码的时间复杂度为O(n)O(n)可读作“时间复杂度为n”,也叫线性时间复杂度O(n)通常对应(与输入规模有关的)单层循环循环 n次 循环n次 循环n次 循环 n 次 举个例子 平方时间复杂度 口(n2)intn;cinn;for(inti=0;in;++i){for(inti=0;in;++i){cout"hello world\n";内外两层循环的次数都是n 嵌套代码的时间复杂度等于嵌套内外代码的复杂度的乘积(乘法法则)所有上面这段代码的时间复杂度为O(n2)O(n2)可读作“时间复杂度为n2”,也叫平方时间复杂度O(n2)通常对应(与输入规模有关的)双层循环3种时间复杂度的比较时间复杂度的类型除了O(1)、O(n)、O(n2),还有其他常见的时间复杂度类型:· O(logn):对数时间复杂度,算法所需的执行时间与输入规模的对数成正比。· O(nlogn):线性对数时间复杂度,算法所需的执行时间与输入规模的线性对数成正比。· O(n3):立方时间复杂度,算法所需的执行时间与输入规模的三次方成正比。· O(2n):指数时间复杂度,算法的执行时间与2的n次方成正比。· O(n!):阶乘时间复杂度,算法的执行时间与n的阶乘成正比。复杂度比较:O(1) O(logn) O(n) O(nlogn) O(n2)O(n3)O(2n)O(n!)我们应该尽可能选择时间复杂度低的算法来解决问题时间复杂度的估算方法四点技巧忽略常数项。只关注与n有关的循环。顺序执行的代码、以及与n无关的循环,对时间复杂度不产生影响。省略所有系数。例如,循环2n次、5n+3次等,都可以简化记为n次。循环嵌套时使用乘法。总操作数量等于外层循环和内层循环操作数量之积,每一层循环依然可以分别套用第1点和第2点的技巧保留最高阶的项。因为n趋于无穷大时,其他项的影响都可以忽略。需要在不断的实践中,熟练运用时间复杂度的推算方法时间复杂度分析小明的密码小明在某次出国旅行过程中忘记了行李箱的密码,它的行李箱是三位密码锁。小明只记得三位密码之和为19,其中第二位加1等于一三两位之和,第一位的1.5倍等于第三位。请帮助小明找出他的密码。【输入】无【输出】一行三个整数,用空格做间隔。#includebits/stdc++.husing
http://www.zskr.cn/news/1389327.html

相关文章:

  • Claude Code源码剖析 - Message 与上下文结构
  • 事件丢失率超0.03%?DeepSeek官方未公开的3层补偿机制与自动重放引擎配置秘钥
  • 代码质量正在 silently decay?DeepSeek模型输出的隐蔽缺陷,你检测到了吗?
  • Kali Linux下蚁剑实战部署与红队持久化控制全指南
  • 为什么92%的Unity团队卡在Sora 2集成第一关?揭秘Unity 2023.2+中被移除的3个关键VideoCapture API
  • AMD Ryzen内存时序深度解析:ZenTimings技术揭秘与实战指南
  • 嵌入式Linux驱动开发——GPIO 子系统架构深度解析
  • 2026 AI学习机推荐来了:智能小初高机型深度解析 - 博客万
  • C++OJ题经验总结(竞赛)2
  • 使用Taotoken后API调用延迟与稳定性体验分享
  • 新药观潮①|解码中国创新药的黄金十年与未来之路
  • BepInEx终极指南:3步打造你的专属Unity游戏模组体验
  • 为RV1126构建带SRT和H.265的FFmpeg推流库:一份详细的依赖库配置清单
  • 实验报告(一)
  • AI工具热度周期观察:从狂欢到沉默,内容创作者的红利在哪里?
  • 金龙电机冲刺港股:年营收7.3亿 利润3861万 叶锦武家族色彩浓厚
  • 终极指南:如何用UABEAvalonia高效编辑Unity游戏资源包
  • 从NOIP经典题“铺地毯”出发:结构体如何让算法思维更清晰
  • 如何构建一个完全离线的Windows实时语音识别系统
  • 2026最新五家龙井市黄金回收白银回收铂金回收彩金回收店铺靠谱回收门店推荐TOP5排行榜及联系方式推荐 - 前途无量YY
  • Next.js集成Replicate AI:轮询与Webhooks实战及性能优化指南
  • 2026性价比高的GEO优化服务商推荐:性价比排名与选型指南 - 速递信息
  • 毕业设计 YOLOv8工地安全监控预警系统(源码+论文)
  • ARM PMU与LFB缓存性能监控实战指南
  • [智能体-45]:MCP(Model Context Protocol,模型上下文协议)概述
  • 蓝桥杯实战:从零解析蜂鸣器、继电器与LED的协同控制
  • 5分钟彻底掌握BetterNCM-Installer:解锁网易云音乐的终极插件体验
  • 从51到FPGA:多平台驱动A4988与42步进电机实战(附双线轨升降台设计)
  • ARMv8/ARMv9虚拟化调试与性能监控:HDFGRTR_EL2寄存器解析
  • 如何3分钟实现9大网盘下载加速:LinkSwift直链解析工具完全指南