设置

关灯

第556章:这个问题果然是秀啊(第3节)

题表示为o(n2)。两个问题一对比就发现随着n的增加o(n2)更难一些,这很好理解,因为n2比n大。”

叶华继续边写边说:“n、n2、n等等或者它们的组合就叫多项式,这类问题就是「p=np?问题」中的p类问题。那有没有更难的问题?当然有,比如质数问题。”

说着叶华回头看向学生们:“一个自然数a是不是质数?解决它需要多少步?笨方法就是挨个的除,从1开始除到√a,所以最多用到√a步,完整的描述就是:一个n位数的自然数a是不是质数?”

完全代入讲师角色的叶华旋即转身在浮空屏幕上继续罗列式子:“n位数的十进制数可以表示:10n-10(n-1),那显然质数问题就是:o(√102),就算是二进制数也是:o(√2n),同学们看,随着位数n的增加质数问题是不是已经呈现指数上升了?这是很恐怖的上升趋势。”

“以上说的所有问题都有一个共同点,不管难不难,只要给一个答案去验证,就会显得容易很多,比如说:某个a不是质数,因为它可以被这个数b整除,那验算它就行了,可以在多项式时间内进行验证。那么所有这类问题就是np类问题。”

叶华环顾八个学生,看到他们的眼神中没有任何疑惑不解,显然都理解了,对于他们的表现很满意。

“n代表非确定,p和np的标准定义和图灵机有关,p可以在多项式时间内解决问题,而np不管难不难但可以在多项式时间内验证,这是他们两者的区别,要注意。那是不是说np问题要比p类问题更难?答案否,因为p类问题是属于np类问题,这一点也要注意。”

叶华又在学生们面前踱步而走,有条不紊的讲道:“在数学上亦或者计算机领域,对于一个问题的困难与否,很大程度取决于计算方式,计算机就是算法,算法是计算机的灵魂。即便做数学题目也一样,同一题有的方法简单快速,可能就是差一条辅助线的问题。”

“前面讲的都是死方法,达到目的就行了。在计算机里的术语叫‘冒泡法’,其复杂度就是o(n2

本章未完,请点击"下一页"继续阅读! 第3页 / 共5页