1.时间复杂度比较(及空间复杂度)

时间复杂度判断理论:O(1) <= O(log2(n)) <= O(n) <= O(n*log2(n)) <= O(n^2) <=...<=O(n^k) <= O(2^n)

空间复杂度判断理论:

属性 大小
char( unsigned char / signed char) 1个字节
short int( unsigned short int / signed int) 2个字节
int( unsigned int / signed int)   4个字节
long int( . /. ) 8个字节
float 4个字节
double 8个字节
long double  16个字节

注意:一个字节8位二进制数。

个人成长路程

阶段一:看到一个程序能够很快看到它的算法的时间复杂度(最大时间复杂度)。

阶段二:能够就算出每一部分的(时间复杂度)最大时间复杂度。

阶段三:能够精确的找到可以优化的步骤并找到合适的方式进行优化。

阶段四:找到全部可以优化的步骤,用你自己所学的最好的方式进行优化,充分考虑时间复杂度,和空间复杂度。

遇到的问题:

例子:求出下列算法的时间复杂度。

void fun(int n){int i = 1, j = 100;  //空间为 8个字节while( j < n ){      //时间为 n次循环 ++j;i+=2;}
}
分析:
第一步:找出基本操作,确定规模na:找基本操作(基本操作就是其重复执行次数和算法的执行时间成正比的操作)重复最多的(最大时间复杂度)++j;i+=2;b:确定规模,基本操作执行的次数。i < n;循环执行的操作和n有关,因此参数n就是规模n。
第二步:计算出n的函数f(n)i 初值为 1 i+=2则时间复杂度为:n/2, 因此时间复杂度为:n。

必须要练习的题目:你所遇到的所有算法题都要进行分析。

考研数据结构必须掌握的知识点相关推荐

  1. 计算机队列概念,2020计算机专业考研数据结构知识点:栈、队列和数组

    2020计算机专业考研数据结构知识点:栈.队列和数组 1.栈.队列的定义及其相关数据结构的概念,包括:顺序栈.链栈.循环队列.链队列等.栈与队列存取数据(请注意包括:存和取两部分)的特点. 2. 掌握 ...

  2. 计算机专业考研数据结构比较,计算机专业考研科目:数据结构重点汇总

    今天说说文都考研网小编为同学们整理了数据结构科目的重点知识点,供大家参考复习. 1.数据结构的基本概念.基本原理和基本方法,能够对算法进行基本的时间复杂度和空间复杂度的分析;能够运用数据结构的基本原理 ...

  3. 计算机考研数据结构算法模板

    计算机考研数据结构算法模板 前言 临近考研,想给考研党们分享一些比较通用的算法模板,让复习更高效一点.如果备考时间足够长,备考人应该有大量时间刷大量习题,会有自己总结的算法模板,笔者文章参考了王道考研 ...

  4. 王道数据结构课代表 - 考研数据结构 第三章 栈和队列 究极精华总结笔记

    本篇博客是考研期间学习王道课程 传送门 的笔记,以及一整年里对数据结构知识点的理解的总结.希望对新一届的计算机考研人提供帮助!!!   关于对 栈和队列 章节知识点总结的十分全面,涵括了<王道数 ...

  5. 王道数据结构课代表 - 考研数据结构 第五章 树和二叉树 究极精华总结笔记

    本篇博客是考研期间学习王道课程 传送门 的笔记,以及一整年里对数据结构知识点的理解的总结.希望对新一届的计算机考研人提供帮助!!!   关于对 树和二叉树 章节知识点总结的十分全面,涵括了<王道 ...

  6. 考研[*数据结构*]学习笔记汇总(全)

    文章目录: 一:预备阶段 二:基础阶段笔记 三:冲刺阶段笔记 四:各章节思维导图 五:题库 来源:王道计算机考研 数据结构 一:预备阶段 之前的数据结构笔记 数据结构--学习笔记--入门必看[建议收藏 ...

  7. 王道数据结构课代表 - 考研数据结构 第四章 串-KMP(看毛片算法) 究极精华总结笔记(C版本)

    本篇博客是考研期间学习王道课程 传送门 的笔记,以及一整年里对数据结构知识点的理解的总结.希望对新一届的计算机考研人提供帮助!!!   关于对 串 章节知识点总结的十分全面,涵括了<王道数据结构 ...

  8. (王道408考研数据结构)第五章树-第四节2:平衡二叉树(AVL)及其旋转

    文章目录 一:AVL树基本概念 二:AVL树实现原理 (1)构建AVL树 (2)构建演示 (3)旋转方法 A:右单旋转调整(插入到较高左子树左侧) B:左单旋转调整(插入到较高右子树右侧) C:先左后 ...

  9. (王道408考研数据结构)第三章栈和队列-第三节1:栈的应用之括号匹配问题和表达式问题(前缀、中缀和后缀)

    前面我们就说过,栈是一种先进后出的线性表,这种先进后出的特性就决定了它在一类场合或问题中会经常被用到--递归.考研数据结构中所涉及的利用栈结构解决递归问题或者考察栈结构特性的问题主要有这么几类 括号匹 ...

最新文章

  1. 在 Wiki 标记中添加无序列表
  2. 记ThoughtWorks面试失败之旅
  3. 为什么MySQL索引要使用 B+树,而不是其它树形结构?
  4. 没有共享存储和仲裁盘的SQL Server 2012HADR故障手动切换TSQL
  5. python-flask-Flask-SQLAlchemy与Flask-Migrate联合进行数据化迁移
  6. Hadoop之MapReduce理论篇01
  7. 基于朴素贝叶斯的定位算法
  8. D3/Echarts/G2的对比分析
  9. Wishbone总线
  10. Gstreamer学习笔记(5):GStreamer Pad and Capabilities Negotiation
  11. 我想成为一个记计算机程序员英语作文,我的梦想高中英语作文带翻译
  12. Axure原型设计灯箱效果
  13. Captura录屏没有声音解决方法
  14. deepin 相关问题
  15. 对于阿里云的oss上传本地图片的相关注意点
  16. 支付宝异步通知 asp
  17. matlab wolfe准则,[原创]用“人话”解释不精确线搜索中的Armijo-Goldstein准则及Wolfe-Powell准则...
  18. 图(Dijkstra,Prim,Kruskal)
  19. C1-见习工程师(计算机通识)
  20. 计算机仿真实验结果的评价与分析,计算机仿真分析实验报告

热门文章

  1. spring入门经典教程
  2. 3个空间互不平行的平面,其交点推导公式
  3. 可爱的 LXD 系统容器
  4. Git快捷删除本地已经合并到master的分支
  5. EPSG竟然是个“石油组织”?
  6. PIP安装mysqlclient报错:Building wheel for mysqlclient (pyproject.toml) ... error error: subproces
  7. 张铁军:几种主动性道路安全完善技术方法
  8. 超级牛人在华为的十年
  9. python矩阵计算_python计算矩阵
  10. 货币有自由迁徒的权利?