1. 算法的特性

输入(Input)

一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件;

输出(Output)

一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的。可以在控制台打印输出或者返回一个或多个值等。

确定性(Definiteness)

算法中的每一步骤必须有确切的含义,不能产生多义性:

可行性(Effectiveness)

算法中的每一步骤必须是切实可执行的,即原则上可以通过已经实现的基本运算执行有限次来实现(也称之为有效性);

有穷性(Finiteness)

算法在执行有限的步骤后自动结束,不会出现无限循环,并且每一个步骤在可接受的时间内完成。意思是当一个算法执行个 三五十年才结束,人都等的挂到墙上了,这样的算法也没有实际意义。

2. 推导大O阶方法

1)、用常数1取代运行时间中的所有加法常数

2)、在修改后的运行次数函数中,只保留最高阶项

3)、如果最高阶存在且不是1,则去除与这个项相乘的常数。

[数据结构] 时间复杂度计算相关推荐

  1. 数据结构-时间复杂度计算示例

    数据结构-时间复杂度计算示例 1 数据结构-第一章-思维导图 2 时间复杂度-简介 3 时间复杂度-示例 3.1 时间复杂度-常用技巧 3.2 时间复杂度-示例 3.2.1 对数阶-时间复杂度计算 3 ...

  2. 数据结构--时间复杂度计算和空间复杂度计算篇

    时间复杂度和空间复杂度 一.时间复杂度 1.定义 2.三种时间复杂度 3.计算 *计算 #计算步骤 #常用技巧 #例题解析 二.空间复杂度 #定义 *计算 #计算步骤 #常用技巧 #例题解析 一.时间 ...

  3. 时间复杂度计算超全整理!!(数据结构和算法的第一步

    目录 1. 什么是数据结构? 1.1 数据结构和数据库的区别 1.1.1磁盘的特点: 2.什么是算法? 3.算法效率 3.1 如何衡量一个算法的好坏 4.时间复杂度 4.1 时间复杂度的概念 4.2 ...

  4. 【算法数据结构Java实现】递归的简单剖析及时间复杂度计算

    1.理解 对于递归函数的理解,我觉得是比较重要的,因为很多大神能把递归函数用的惟妙惟肖,不光是他们的编程功力高深,更主要是能理解这个算法.比较直白的理解是,如果一个事件的逻辑可以表示成,f(x)=nf ...

  5. 二分查找与时间复杂度计算分析

    二分查找: 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好:其缺点是要求待查表为有序表,且插入删除困难.因此,折半查找方法适用于不经常变动而查找频繁的有序列表.   原理:假设表中元素 ...

  6. Python 时间复杂度计算

    一.时间复杂度 1 常见的时间复杂度 #常量阶O(1) # 对数阶O(logn) # 线性对数阶O(nlogn) # 线性阶O(n) # 平方阶,立方阶....M次方阶O(n^2),O(n^3),O( ...

  7. Java基础-时间复杂度计算方式

    Java基础-时间复杂度计算方式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   时间复杂度通常是衡量算法的优劣的,衡量算法的时间严格来讲是很难衡量的,由于不同的机器性能不用环境 ...

  8. 【算法设计与分析】16 分治策略:快速排序(快速排序的时间复杂度计算)

    上一篇文章学习了:[算法设计与分析]15 分治策略:芯片测试 文章目录 1. 快速排序的基本思想 1.2 时间复杂度的计算 1.21 最坏情况时间复杂度计算 1.22 最好情况时间复杂度 1.23 平 ...

  9. 时间复杂度计算--求两正整数最大公约数

    1.计算时间复杂度的基本流程 时间复杂度计算主要分为3个步骤: 先找出算法的基本操作 计算基本语句的执行次数的数量级 用O记号表示算法的时间性能 2. 求两数最大公约数 问题描述:求a, b两正整数的 ...

最新文章

  1. 数据结构与算法(3-1)栈(顺序栈、两栈共享空间、链栈、栈的计算器)
  2. 详解「递归」正确的打开方式
  3. Java/C语言/C++/Python/PHP运算符优先级
  4. 单例模式 GetInstance()
  5. 2011年 11月底-12月初 51Aspx源码发布详情
  6. 【Python】Matplotlib利用楔形绘制圆环形饼图
  7. 究竟如何保证session一致性?
  8. LVM逻辑卷管理命令
  9. 【然天一】随机读写(4k)百盘天梯
  10. 我看《网络营销实战密码:策略 技巧 案例》这本书
  11. 【Prescan学习】Prescan环境配置(介绍+安装+学习资源)
  12. hsqldb mysql_安装HSQLDB
  13. rgb sw 线主板接口在哪_火力升级 华硕B460重炮手PRO主板豪横上市_搜狐汽车
  14. 公共服务中,人脸识别的三类风险隐患与安全防护
  15. 解决各大浏览器下载文件,文件名中文乱码的问题
  16. TLS/SSL 协议详解(17) Certificate verify
  17. .py文件与.ipynb文件互相转换
  18. CentOS7 使用二进制部署 Kubernetes 1.15-1.17集群(均通用,已经尝试,细心)
  19. 微软研发中心招聘的背后
  20. 阿里云独享虚拟主机和共享虚拟主机区别对比

热门文章

  1. Magento入门基础 - 后台如何批量导入产品及产品图片
  2. Go 源码阅读笔记 text/template/parse
  3. php利用mysql扩展库向数据库插入数据的步骤与案例
  4. C#读写文件:编码和转换(string和byte[]转换为例)
  5. Java--------------Mysql中时间按要求查询
  6. [20150608]dbms_random.value.txt
  7. 乌克兰农贸市场现在接受比特币BCH等加密货币
  8. BCE支持者在BCH见面会烧毁BCH主题衣服
  9. 状态管理框架开发不完全指南
  10. Python包管理工具pip安装