• 学习笔记——数据结构与算法之美_极客时间


    1、要掌握的:

    10个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie 树;

    10 个算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法

    算法和数据结构的关系:数据结构是为算法服务的,算法要作用在特定的数据结构之上

     2、基本功:复杂度分析

    我们需要一个不用具体的测试数据来测试,就可以粗略地估计算法的执行效率的方法,了解你的代码运行质量!

    所有代码的执行时间T(n) 与每行代码的执行次数成正比. 即: 每行代码的执行次数越多,所有代码的执行时间就越长. 每行代码的执行次数越少,所有代码的执行时间就越短.

    从最初每行代码的时间都要计算在内,叫T(n), 大 O 时间复杂度实际上并不具体表示代码真正的执行时间,而是表示代码执行时间随数据规模增长的变化趋势,其忽略了低阶、常量、系数。

    最终,我们分析时间复杂度 都是 说 量级 O(n)、O(n方) 

    如何时间复杂度分析总结:

    1. 只关注循环执行次数最多的一段代码

    2. 加法法则:总复杂度等于量级最大的那段代码的复杂度

    3. 乘法法则:嵌套代码的复杂度等于嵌套内外代码复杂度的乘积

    常见的复杂度量级如下:

  • 相关阅读:
    Uncaught (in promise) Error: No match for
    FISCO BCOS(十七)利用脚本进行区块链系统监控
    MatrixOne 支持多样化生态工具,持续提升开发者体验
    DX-11Q信号继电器
    ZooKeeper面试题
    Word另存为PDF后无导航栏解决办法
    kafka常用命令行命令
    Spring MVC上篇
    机器学习西瓜书——第五章 神经网络
    day22-web开发会话技术04
  • 原文地址:https://blog.csdn.net/u013372493/article/details/126629937