时间复杂度总结(Ο是渐进上界,Ω是渐进下界,p,np,np-hard,NPC问题)

简介: 时间复杂度总结(Ο是渐进上界,Ω是渐进下界,p,np,np-hard,NPC问题)

1e965bd87317445cb6bbbdcc63100629.png

Ο是渐进上界,Ω是渐进下界。Θ需同时满足大Ο和Ω,故称为确界。Ο极其有用,因为它表示了最差性能。


f(x) = O(g(x)) 表示的含义是f(x)以g(x)为上界     f(x)<g(x)。

980039e007f04d0f955a4f3dad9b7e08.png

80d3f9f7674e4faa8ae88437c84a88d5.png

f(x) = Ω(g(x)) 表示的含义是f(x)以g(x)为下界   f(x)>g(x)


P问题:


一个问题可以在多项式(O(n^k))的时间复杂度内解决。


NP问题:


一个问题的解可以在多项式的时间内被验证。


NP-hard问题:


任意NP题都可以在多项式时间内归约为该问题,但该问题本身不一定是NP问题。归约的意思是为了解决问题A,


先将问题A归约为另一个问题B,解决问题B同时也间接解决了问题A。


NPC问题:


既是NP问题,也是NP-hard问题。


目录
相关文章
ccfcsp 202312-2 因子化简
ccfcsp 202312-2 因子化简
ccfcsp 202009-2 因子化简
ccfcsp 202009-2 因子化简
|
6月前
|
算法 测试技术 C++
【动态规划】【数学】【C++算法】805 数组的均值分割
【动态规划】【数学】【C++算法】805 数组的均值分割
|
存储 算法 数据处理
求解TOPK问题
求解TOPK问题
34 0
卡诺图化简法的介绍
卡诺图化简法:从真值表到逻辑电路设计 一、引言(100字) 卡诺图化简法是一种常用的布尔代数化简方法,可以将复杂的逻辑电路简化为更简单的形式。本文将介绍卡诺图化简法的基本原理、应用技巧和实际案例,以帮助读者更好地理解和应用该方法。 二、卡诺图化简法的基本原理(200字) 卡诺图是一种二维表格,用于表示布尔代数中的逻辑函数。卡诺图的每个格子代表一个输入变量的取值组合,而格子内的数值则表示该输入变量组合下逻辑函数的输出值。通过卡诺图的排列和组合,可以找到逻辑函数的最简形式,并设计对应的逻辑电路。 卡诺图化简法的基本原理是利用逻辑函数的真值表,将相邻的1合并成更大的1组,从而找到最简的逻辑表达
361 0
|
算法
C++11 用next_permutation算法计算排列组合数
C++11 用next_permutation算法计算排列组合数
221 0
|
机器学习/深度学习 算法 Java
排序不等式算法
排序不等式算法
排序不等式算法
|
机器学习/深度学习 人工智能 算法
CF1446D Frequency Problem(思维 前缀和 根号分治 双指针)
CF1446D Frequency Problem(思维 前缀和 根号分治 双指针)
92 0
|
机器学习/深度学习 算法
算法时间复杂度--推导大O阶
记录时间复杂度的计算方法——推导大O阶方法
256 0