P、NP、NPC 问题解释

本文详细介绍了P、NP和NPC问题的概念。P问题可以用多项式算法解决,NP问题能在多项式时间内验证解,而NPC问题是所有NP问题的子集,其解法将解决所有NP问题。此外,还讲解了约化思想以及NP-hard问题的区别。
摘要由CSDN通过智能技术生成

行文目的

目前网络上(知乎、CSDN等)已经有了很多大佬大神对于NP问题进行过比较详细的解释,其中Paul-Huang在CSDN上发表的文章以及知乎上分享出来的一篇文章对我帮助很大,现在将链接复制在此处,本文的目的在于帮助自己加深理解并且希望能给后来的朋友们进行些许帮助。如果本文有什么描述错误的地方欢迎批评指正。
Paul-Huang 文章链接
Matrix67: The Aha Moments 什么是P问题、NP问题和NPC问题

什么是多项式算法

多项式算法在很多情况下也被解释为有效算法或者好算法,是指一类时间复杂度不超过一个多项式的算法。换句话说,就是指算法的时间复杂度为O(1),O(log(n)),O(na)等的算法,他的数据规模n出现在底数的位置。与之相对应的是非多项式算法,包括时间复杂度为O(an)的指数级以及O(n!)的阶乘级,这类非多项式算法在进行求解的时候除非数据规模很小否则将花费大量时间和计算资源。

什么是P问题

P问题,是指可以使用多项式算法进行求解的问题,即可以在多项式时间内解决的问题。这里的P是指polynomial–多项式一词的第一个字母。
这类问题一般也被视为可以较快解决的问题,典型代表为排序问题、最小生成树等

什么是NP问题

NP问题不是指non-p

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值