一,什么是算法?
通俗讲算法是解决问题的一种方法。
二,算法的复杂性分析
1,算法的复杂性高低体现在运行该算法所需的计算机资源多少上,所需资源越多,该算法的复杂性越高;反之,所需资源越少,该算法的复杂性越低。对于计算机,最重要的是时间(CPU处理时间)和空间资源(内存)。因此,算法的复杂性有时间复杂性和空间复杂性之分。
2,人们通常将在多项式时间内解决的问题看作是"易"解决的问题,而将需要指数函数时间解决的问题看作是"难"解决的问题。
三,NP难问题
1,P问题:可以用多项式时间的确定性算法来进行判定或求解。
2,NP问题:可以用多项式时间的确定性算法来检查或验证它的解,P问题属于NP问题。