
算法数据结构
zhiaoo
这个作者很懒,什么都没留下…
展开
-
最大公约数
最大公约数辗转相除法, 又名欧几里德算法(Euclidean algorithm),是求最大公约数的一种方法。它的具体做法是:用较小数除较大数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。通俗的讲, 计算两个非负整数 p 和 q 的最大公约数:将 p 除以 q 得...原创 2019-01-11 17:35:12 · 194 阅读 · 0 评论 -
图灵停机问题的史上最详细描述
图灵停机问题停机问题就是判断任意一个程序是否能在有限的时间之内结束运行的问题。等价于是否存在一个程序H,对于任意输入的程序P,能够判断P会在有限时间内结束或者死循环。假设存在这样的一个函数H来判断一个程序P在输入为 I 情况下是否会停机。最后用反证法,证明不存在这样的H.如果P停机,H输出0表示P是停机,否则H输出1表示P是死循环。int H(P, I); // 这里的H函数有两种返回值...原创 2019-01-12 22:57:00 · 16032 阅读 · 3 评论 -
P,NP, NPC, NP-Hard问题的关系详解
我想试着把p, np, npc, np-hard问题给大家讲清楚了。讲不清楚,你给我留言,砸我招牌砸我店。在介绍之前,先说一下什么是确定性问题,什么是非确定性问题。确定性:比如小学学的加减乘除之类的,你只要按部就班的算,这个算法就能得到结果。非确定性:比如找大质数的问题。有没有一个公式,你一套公式,就可以一步步推算出来,下一个质数应该是多少,这样的公式是没有的。但可以告诉你一个答案,你在...原创 2019-01-13 18:44:41 · 3067 阅读 · 0 评论