美文网首页
搜索,动态规划,二叉树的时间复杂度计算通用公式

搜索,动态规划,二叉树的时间复杂度计算通用公式

作者: 鸭蛋蛋_8441 | 来源:发表于2019-06-23 06:22 被阅读0次

搜索的时间复杂度:O(答案总数 * 构造每个答案的时间)

举例:Subsets问题,求所有的子集。子集个数一共 2^n,每个集合的平均长度是 O(n) 的,所以时间复杂度为 O(n * 2^n),同理 Permutations 问题的时间复杂度为:O(n * n!)

动态规划的时间复杂度:O(状态总数 * 计算每个状态的时间复杂度)

举例:triangle,数字三角形的最短路径,状态总数约 O(n^2) 个,计算每个状态的时间复杂度为 O(1)——就是求一下 min。所以总的时间复杂度为 O(n^2)

用分治法解决二叉树问题的时间复杂度:O(二叉树节点个数 * 每个节点的计算时间)

举例:二叉树最大深度。二叉树节点个数为 N,每个节点上的计算时间为 O(1)。总的时间复杂度为 O(N)

相关文章

  • 搜索,动态规划,二叉树的时间复杂度计算通用公式

    搜索的时间复杂度:O(答案总数 * 构造每个答案的时间)举例:Subsets问题,求所有的子集。子集个数一共 2^...

  • 搜索,动态规划,二叉树的时间复杂度计算通用公式

    搜索的时间复杂度:O(答案总数 * 构造每个答案的时间) 举例:Subsets问题,求所有的子集。子集个数一共 2...

  • 2021-03-03

    动态规划所得的推导公式一般是通过记忆化搜索得来的。而记忆化搜索的来源则往往是由于递归需要重复计算的值通过开辟而外空...

  • 动态规划+单调队列

    最近在做一个动态规划相关的题目,发现了有一些动态规划题目中可以使用单调队列来简化计算的复杂度,本来以为动态规划以及...

  • 软考知识点

    各类算法时间复杂度: 1. 分治法 时间复杂度 nlogn 2. 动态规划法 时间复杂度 n*n 空间复杂度 n ...

  • 动态规划总结1 一维dp

    动态规划的核心就是将问题分解成子问题,然后推导出公式,根据公式利用以前计算的结果进行计算.它需要枚举出所有的可能,...

  • 学习笔记2020-06-05

    1、基本函数类 2、指数和阶乘公式 3、序列求和的方法 4、二分搜索的时间复杂度的计算和放大法 5、策略模式 1、...

  • AVL树

    AVL树是一种平衡搜索二叉树,二叉搜索树的平均时间复杂度为Olog(n),也就是树的高度,最差的时间复杂度为O(n...

  • 数据结构第二季 Day18 动态规划中篇、最大连续子序列和、最长

    一、动态规划中篇 1、动态规划的新手三步曲是什么? ①暴力递归(自顶向下,会出现重复计算子问题) ②记忆化搜索(自...

  • LeetCode ---- 搜索旋转排序数组

     采用动态规划的方法,不断找到目标值的可能存在区间。 复杂度分析: 时间复杂度:O(log(n))。 空间复杂度:...

网友评论

      本文标题:搜索,动态规划,二叉树的时间复杂度计算通用公式

      本文链接:https://www.haomeiwen.com/subject/chobqctx.html