P NP NPC NP-Hard 问题的定义
P Problem:
如果一个问题可以找到一个能在多项式的时间里解决它的算法,那么这个问题就属于P问题。
NP Problem:
NP问题不是非P类问题。NP问题是指可以在多项式的时间里验证一个解的问题。NP问题的另一个定义是,可以在多项式的时间里猜出一个解的问题。
NP-Complete Problem:
同时满足下面两个条件的问题就是NPC问题。首先,它得是一个NP问题;然后,所有的NP问题都可以约化到它。
NP-Hard Problem:
NP-Hard问题是这样一种问题,它满足NPC问题定义的第二条但不一定要满足第一条(就是说,NP-Hard问题要比 NPC问题的范围广)。