NP完全性理论(算法分析与设计)

本文介绍了NP完全性理论,包括时间复杂度的概念、易解与难解问题的区别、确定性和非确定性计算模型的差异。重点阐述了P问题和NP问题的定义,探讨了P是否等于NP的未解难题,并详细解释了NP完全问题的特性,以及如何证明一个问题是NPC问题。文章还提到了NPC问题的求解策略,如枚举、动态规划、概率算法和近似算法等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0.参考

http://www.matrix67.com/blog/archives/105(极好,通俗易懂)

《算法导论》NP完全性

《算法设计与分析》NP完全性理论

1.基本概念

a.时间复杂度

定义:时间复杂度并不是表示一个程序解决问题需要花费多少时间,而是当一个问题规模扩大以后,程序需要的时间长度增长得有多快

例子:冒泡排序、插入排序等,数据扩大2倍,时间变慢4倍的,属于O(n^2)的复杂度

b.多项式级复杂度与非多项式级复杂度

一种是O(1),O(log(n)),O(n^a)等,我们把它叫做多项式级的复杂度,因为它的规模n出现在底数的位置。另一种是O(a^n)和O(n!)型复杂度,它是非多项式级的,其复杂度计算机往往不能承受。

c.易解问题和难解问题

能在多项式时间内解决的问题称为易解问题,只能在指数级时间内解决的问题称为难解问题

d.确定性计算模型(如确定性图灵机)与非确定性计算模型(如非确定性图灵机)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值