【可计算性理论】P/NP/NP-Complete/NP-Hard简单理解

计算理论初步:P vs NP 问题 1.问题概述 P = NP? 这个问题,作为理论计算机科学的核心问题,其声名早已经超越了这个领域。它是Clay研究所的七个百万美元大奖问题之一,在2006国际数学家大会上,它是某个1小时讲座的主题。 要说起P和NP是什么东西,得先从算法的多项式时间复杂度谈起,注意,这里面的两个P都是指Polynomial。 一个问题的规模指的是输入的总位数,比如一个n个数的排序问题,输入规模就是n。注意, 阅读详情

1.归约:通过一个问题解决另一个问题。

2.P问题:在常规计算机上可以以多项式时间内解决的问题。

3.非确定性(Non-deterministic)和NP问题:

假设有这样一台计算机,它是可以同时测试所有可能答案的超级计算机。考虑这样一些问题,给出解的某个猜测,看看是否可以在多项式时间内检验这个猜测。如果可以,这样的计算机称为非确定性计算机。

非确定性就是指这种猜测问题的正确答案或者并行检验所有可能的答案,以确定哪一个正确的思想,称为非确定性。如果某算法以这样的方式工作,该算法称为非确定性算法。

如果一个问题可以在一台非确定性计算机上运行(并行检验所有穷举答案),在多项式时间内解决,这样的问题称为NP问题。

4.P问题是一类特殊的NP问题。在多项式时间内解决的问题当然也能在多项式时间内验证。

5.NP完全(NP-Complete)问题

定义:存在一个问题Q,满足(1)Q在NP中;(2)NP的每一个其它问题都可以归约在多项式时间内归约到Q。

令人惊喜的是,NPC问题是存在的(合取范式问题,详见Cook在1971年的论文)。

6.P=NP?

显然,我们容易想到,如果我们找到一个NP完全问题使得所有的其它NP问题都可以在多项式时间内归约到它,并且找到了一个NP完全问题的多项式算法,也就说明所有的NP问题都可以用这样一个确定性的算法在多项式时间内解出,这就是P=NP。证明或者推翻P=NP可以说是现在数学和计算机行业最难的问题。

7.NP-Hard(NP难)问题

NP-Hard问题是指的是满足NPC问题定义的第2条而不满足第1条的问题。就是说是否存在一个非NP问题,所有的NP问题都能归化到它。也就是即使有一天发现了NPC问题的多项式算法,但NP-Hard问题仍然无法用多项式算法解决,因为它不是NP问题,对于答案的验证都很困难。

8.假如P=NP,意味着什么呢?

很多人认为P≠NP,因为P=NP的世界将会变得疯狂。但是世界不是无数次给过我们惊喜和惊吓吗?

推荐链接:http://www.matrix67.com/blog/archives/2552

更具体的讲解:https://blog.youkuaiyun.com/qq_29176963/article/details/82776543#PNPNPCNP_39

FPGA DMA IP核使用指南 数据传输:支持从源地址到目标地址的数据传输。中断管理:提供中断信号,便于CPU处理传输完成事件。传输控制:支持传输大小、方向和暂停/恢复控制。 阅读详情

相关推荐

3D Slicer + MONAI Bundle实战:如何用Wholebrainseg模型快速分割133个脑区(附避坑指南)

本文详细介绍了如何利用MONAI Model Zoo中的Wholebrainseg模型,在3D Slicer环境中高效分割133个脑区。文章重点提供了数据预处理、GPU推理加速及结果精修等实战技巧与避坑指南,旨在帮助医学影像研究者和开发者提升全脑分割的精度与效率。

312

python,numpy中np.random.choice()的用法详解及其参考代码

处理数据时经常需要从数组中随机抽取元素,这时候就需要用到np.random.choice()。然而choice用法的官方解释并不详细,尤其是对replace参数的解释,例子也不是很全面。因此经过反复实验,我较为详细的总结出了他的用法,并给出了较为详细的使用代码例子。 官方解释:https://docs.scipy.org/doc/numpy/reference/generated/numpy.ra...

ImwaterP的博客 29万+

避坑指南:CST粒子工作室Track Solver常见的5个参数设置错误

本文深入剖析了CST粒子工作室中Track Solver在电子枪仿真时常见的5个关键参数设置错误,包括空间电荷模型选择、发射源定义、材料边界处理、监视器配置及求解器稳定性设置。通过对比错误与正确做法,帮助用户避开陷阱,确保粒子追踪仿真的物理准确性与数值稳定性,从而获得更精准的电子枪仿真结果。

dapp9builder的博客 491

最严谨的计算机语言p,P=NP?这世界真有捷径?

原标题:P=NP?这世界真有捷径?来自公众号:菲菲读书在《嫌疑人X的献身》中,石神和汤川讨论,解决一个命题和判断一个命题是否正确,哪个更难。讨论中,他们提到了P≠ NP的证明。这是一个困扰了不仅仅是计算机科学家,也包括数学家、经济学家、甚至哲学家以久的问题。同时,P/NP是7个千禧年数学难题之一,足见其重要性和难度之大。 ....不过,P与NP这个命题为何如此重要?P与NP分别是什么含义?我们普...

weixin_36096321的博客 1104

QSPI Flash的原理与QSPI时序的Verilog实现

本节主要是讨论QSPI(Quad SPI,四线SPI总线)的相关内容。我的开发板上有一片型号是W25Q128BV的Quad SPI Flash存储器,本文将以它为例子来说明QSPI操作的一些内容。

Go Forward Forever! 4167

知识图谱中的 Ontology(本体论)

本文的部分图片和内容来自中国科学院自动化研究所刘康老师的课件 Ontology(本体论) Ontology 是(特定领域)信息组织的一种形式,是领域知识规范的抽象和描述,是表达、共享、重用知识的方法。 Ontology 是知识体系构建的关键技术,知识图谱是一种人工智能技术,它的关键在于让计算机能够处理人类的知识。然而,人类脑海中的知识通常是直觉性的,我们无法将这种直觉性的知识直接输入给计算机,On...

P01son的博客 2万+

NP理论(P、NP、NPC和NP-hard)

P问题:可以在以多项式表达的时间内求出确切解的问题,也就是说它的计算复杂度是一个多项式。我们通常用的O(n),O(logn),O(n^2)等等类似的都是这类问题。 NP问题:英文是non-deterministic polynomial,是多项式时间可以验证的问题。最初是在非确定图灵机上,如果一个问题存在一个解,那么就先猜它,一定可以在多项式时间内猜到这个解。(关键是就是不判定这

飘过的春风 7813

《四》:LBE,VR 大空间系列——Pico的空间扫描方式

(这里有个选项叫高精度扫描模式,这个功能在下方详细补充)系统会根据绘制的顶点,将区域分割成若干个4X4米的小方格,我们只需要根据提示,首先进入一个方格子空间内部,然后依次凝视每个区域上下左右前后六个面的小方格组,每一面4个,直至全部消失, 消失后地面会出现一个方形行走路径,我们沿着边缘正或反走一圈即可,完成后此块区域即自动消失。不过由于pico有一个高精度扫描圈,如图加粗的圆环,这个圆环的意思是在在内部的区域扫描精度较高,越远离原点的区域误差越大,所以为了更有效的利用,建议原点设置在场地中心区域。

unitygroup的博客 2887

NP-hard问题概念理解

在阅读“三维装箱”问题的论文时,接触到NP-hard problem的概念。该博文记录与其相关的一些概念理解。 时间复杂度:指当问题规模扩大后,程序需要的时间的增长程度,而不是表示一个程序运行需要花的时间。 多项式级时间复杂度:O(1),O(log(n)),O(n^a)等。因为规模n出现在底数的位置。 P问题:可以在多项式级时间复杂度内解决 NP问题:可以在多项式级时间复杂度内被验证 NP-har...

全情投入 2万+

外骨骼机器人(二):自适应振荡器

振荡器是一种数学工具,可以用于实时跟踪、预测类周期信号的频率、相位、幅值等,而助行外骨骼机器人需要自动适应人体的行走频率、幅度,两者相结合,就能使助行外骨骼机器人拥有更舒适、更自然的行走步态。 ......

行者无疆的博客 4264

华为OD机试 - 直捣黄龙 - 广度优先搜索BFS(Python/JS/C/C++ 新系统 200分)

从样例 1 可知:5 / 2,2 -> 输出 2 9如果按“移动步数”计算应该是 8,但题目输出是 9,说明这里的“路径长度”统计的是 路径上经过的节点数量。最短路径条数:ways[end]路径长度:dist[end] + 1。

学Java,找哪吒 125

何为 NP-hard

NP-hard 问题 NP-hard problem, NP(Non-deterministic Polynomial) 一、 预备知识1. 时间复杂度表明问题规模扩大后,程序需要的时间长度增长得有多快。 程序的时间复杂度一般可以分为两种级别: 多项式级的复杂度:如 O(1)\text{O}(1),O(logn)\text{O}(\text{log} \ n)、O(na)\t

你通透就好 别问我是谁 3万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

【计算理论】计算理论总结 ( P 、NP 、NPC 总结 ) ★★

一、P 类、 二、NP 类、 三、NPC 类 ( NP 完全 )、 四、P 、NP 、NPC 三者关系、

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 5148

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

P、NP、NP Complete

1.什么是P P = Polynomial O(1), O(logn),O(nlogn),O(n),O(n2)或者o(nk)等 多项式:axn-bx(n-1)+c arr = […], 求max(arr) max = arr[0] 依次比较 2.什么是NP NP = Non Polynomial ? NP = Non Deterministic Polynomial 对于一个问题,假如现在某个解,如果能在多项式时间内验证这个解是否为正确解,那么这个问题就是NP问题。 例子 假设有一个没有重复元素的数组arr

weixin_42529756的博客 606

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

怎么理解 P 问题和 NP 问题?

最简单的解释: P:算起来很快的问题 NP:算起来不一定快,但对于任何答案我们都可以快速的验证这个答案对不对 NP-hard:比所有的NP问题都难的问题 NP-complete:满足两点: 1. 是NP hard的问题 2. 是NP问题 接下来是比较严谨的定义: 问题:对于一个包含由0和1组成的字符串集合S,以某个01字符串x作为输入,要求某个图灵机判断x在不在S里面。这里的图

wjk7186912的专栏 1655

P、NP、NP-complete、NP-hard问题闲谈

先来看一个小故事:(转自:http://zhm2k.blog.163.com/blog/static/5981506820095233143571/) 假如老板要你解决一个问题,你绞尽脑汁还是想不出来,叫天天不应,叫地地不灵,这时你走进老板办公室,可以采取3种策略: 1)

竹子的信仰-set 2435

【计算理论】计算复杂性 ( NP 完全问题 | NP 难 问题 P = NP 的情况 | NP 难 问题 P ≠ NP 的情况 )

一、NP 完全的定位、 二、NP 难 问题 ( P = NP ) 仅做参考 [ 潜在错误 ]、 三、NP 难 问题 ( P ≠ NP ) 目前公认 [ 潜在正确 ]

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 4430

NP-Hard问题浅谈

看相关算法的paper的时候,经常会出现NP-Hard这个词。本博主也不是纯数学系出身,对于这么高深的问题自然没有特别深入独到的理解。但是本博主的习惯就是看到一个东西老在眼前晃来晃去但自己还不是很明白,就有强迫症一定要搞明白这到底是个什么玩意。so,咱们就来看看这个NP-Hard问题,怎么用最简单的方式去了解。1.世界七大数学难题之首2000年,美国克莱数学研究所公布了世界七大数学难题,又称千禧年大

bitcarmanlee的博客 7万+

什么是P=NP问题?

来自:后端技术指南针1 前言今天和大家一起了解个高能知识点:P=NP问题。看到这里我们可能是一头雾水,不由得发问:P问题是什么?NP问题又是什么?P=NP又是什么意思?研究并解决P=N...

架构师小秘圈 1万+

可计算性理论与复杂性介绍

正文 你有没有想过:你正在阅读这篇文章的设备究竟是什么?什么是电脑? 计算科学可以追溯到在这些现代计算机设备还没有被想象出来之前很长一段时间。在一个更经常被问到的问题中,围绕着编程语言、框架和库的问题,我们常常想当然地认为,计算机的基本概念是必不可少的。 但是这些电脑似乎拥有无尽的潜力,它们有任何限制吗?有使用计算机却解决不了的问题吗? 在本文中,我们将通过不......

weixin_36670529的博客 1717

什么是NP-Hard

JSP是典型NP-hard问题之一 所以首先我想解释一下什么是NP-hard问题 在这之前,必须了解一个概念叫做多项式时间:在计算复杂度理论中,指的是一个问题的计算时间不大于问题大小的多项式倍数,通俗些理解我觉得就是一定规模的问题,总有一个时间范围内可以将它解决,这个范围就是多项式时间 然后NP是指非确定性多项式(non-deterministic polynomial,缩写NP)。所谓的非...

nanaz11的博客 1万+

算法复杂度与NP问题

引言 美剧《基本演绎法》S2E2中,两位研究 NP 问题的数学家被谋杀了,凶手是同行,因为被害者即将证明“P=NP 问题”。假设人类证明了P=NP 是真的,那么就会有一个算法,能够很快算出某个帐号的密码。《基本演绎法》里面所想象的可能就要成真了,所有的加密系统都会失去效果——应该说,所有会把密码变成数字信息的系统都会失去效果。 一大批耳熟能详的游戏,如扫雷、俄罗斯方块、超级玛丽等,人们将为它们编写...

徐奕的专栏 4591

NP完全问题 NP-Completeness

原创翻译加学习笔记,方便国人学习算法知识! 原文链接http://www.geeksforgeeks.org/np-completeness-set-1/ 我们已经找到很多很高效的算法来解决很难得问题,例如最短路径(shortest path),一笔画问题(Euler graph),最小生成树(minimum spanning tree)等等。这些都是算法设计者的胜利。在这一篇文章中,我...

weixin_30411239的博客 658

从头开始聊P问题、NP问题与NPC问题

经常会遇到“这是NP问题吗?”,“这个只看来只能去搜了“,”这已经被证明是NP问题了”之类的话。但你是否真的知道这几个之间的区别呢?你要知道,大多数人此时所说的NP问题其实都是指的NPC问题。下面的内容都是在讲什么是P问题,什么是NP问题,什么是NPC问题。接下来你可以看到,把NP问题当成是 NPC问题是一个多大的错误。 引入: 1.多项式时间(Polynomial time) 还是先用几句话简单...

weixin_43353612的博客 1548

P,NP,NP Complete

何为P、NP、NP Complete?

Housz的博客 1196
上一篇: 【机试】Problem E(栈的应用)
下一篇: 1001 A+B Format (20 point(s))
coderwait
博客等级 码龄9年 20粉丝 210原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值