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

算法-Init

在这里插入图片描述

(1)有限性(Finiteness):算法必
需在有限步骤内结束;
(2)确定性(Definiteness):算法的每一个步骤必须清晰无歧义地定义;
(3)输入(Input):有若干个输入
(4)输出(Output):至少1个以上的输出;
5)有效性(Effectiveness):每 个步骤必须可行而且在有限时间内完成 。

算法描述

(1)伪代码(自然语言+自定义符号)
(2)程序流程图
(3)程序:算法的某种计算机语言 的表达

***第一个

算法 E. 给定两个正整数m、n,求出它们的最大公因数。

E1. [求余数] 将m除以n得余数r(0≤r<n)。
E2. [余数是否为0?] If r=0,n就是最大公约数,结束。
E3. [缩小范围] m←n,n←r,回到E1

*流程图:

时间复杂度和空间复杂度

(1)时间复杂性:利用某算法处理 一个问题尺度为N的输入所需的时 间,称为该算法的时间复杂性,记 为函数T(N)。
(2)T(N)的上界:如果存在正常数C和 N0,使得当N>=N0时有T(N)<=Cf(N) 成立,则函数f(N)是T(N)增长率的 个上界,记为T(N)=O(f(N))

(3)T(N)的下界:如果存在正常数C和 使得对无穷多个N有T(N)>=Cf(N) 成立,则函数f(N)是T(N)增长率的 个下界,记为T(N)=Ω(f(N))
(4)T(N)的同阶:如果T(N)=O(f(N))且 T(N)=Ω(f(N)),那么T(N)和f(N)的增 长率是同阶的,记为T(N)=θ(f(N))
(5)空间复杂度:类似时间复杂度, 只把时间换成内存空间大小即可


http://www.kler.cn/news/317991.html

相关文章:

  • [sniffer]分析
  • Excel 冻结多行多列
  • Python机器学习基础(NumPy、Pandas、Matplotlib)
  • 【CPP11?】结合CPP发展历史来理解CPP11
  • 代码随想录算法训练营Day14 | 226.翻转二叉树、101. 对称二叉树、104.二叉树的最大深度、111.二叉树的最小深度
  • 【MySQL内置数据库】information_schema
  • 【C++】检测TCP链接超时——时间轮组件设计
  • 自学前端的正确姿势是...
  • 第17周 第2章Session与ServletContext原理 ---ServletContext与三大作用域对象
  • PerparedStatement概述
  • Qt 模型视图(三):视图类QAbstractItemView
  • Python常见Json对比库deepdiff、json_tools、jsonpatch
  • 【Python】curl命令、Api POST导入cURL、python直接使用cURL
  • OpenHarmony(鸿蒙南向开发)——小型系统内核(LiteOS-A)【内核通信机制】下
  • 球体检测系统源码分享
  • Rust的作用?
  • tar.gz 文件压缩与解压shell实现
  • 付费电表系统的通用功能和应用过程参考模型(下)
  • 鸿蒙HarmonyOS开发:一次开发,多端部署(界面级)天气应用案例
  • R语言NHANES数据分析(2)
  • Angular面试题五
  • LeetCode_sql_day30(1264.页面推荐)
  • 蓝桥等考C++组-2022-11-27-八级
  • 【C++】C++中如何处理多返回值
  • Vue|插件
  • oracle avg、count、max、min、sum、having、any、all、nvl的用法
  • 回答网友的一个SQL问题
  • 国家有要求企业一定要招实习生吗?或者说招了实习生国家会给企业好处吗?
  • IPv6(五)
  • 探索自闭症寄宿学校:为孩子的未来铺设坚实基石