用户:碳烤小火龙查看:0 回复:8 评论:0 创建时间:2018-08-03T03:46:38
近日修炼python略有小成,回来写了个教程。
穷举法 指的是猜测与验证算法的一个变种。
我们枚举所有的可能性,直至得到正确答案或者尝试完所有值。
简单来说就是你想要验证这个数是不是某数字的方根,或是这个数字是否是符合其他条件的数字,然后把所有有可能的数字进行尝试,直到试出答案或是没有其他可能的数字为止
这个算法乍看上去很蠢但是穷举法却是许多问题最高效,实用的解决方法,并且穷举法非常容易制作。
目前现在中国最强计算机 ‘天河一号’ 每秒能进行4700万亿次计算,家用的电脑当然比这个恐怖到令人发指的数据有差距
但至少也在万亿次以上,可能没达到千万亿次,但可以确定在万亿次上。
恐怖到什么程度?
下面我会分享一段穷举平方根的代码(代码全为本人编写,绝对可以运行)
然后你再输入 任意10位数 例如 :1234567890 之类的
来穷举。本人亲测,眼证为实--10亿分之一纳秒,甚至还少。
废话不多说了附上代码:
x = int(input('enter an integer')) #要求输入一个 立方根
ans = 0 #求果数
while ans ** 3 < abs(x): #循环:每次加一乘以3 是否大于 x的绝对值,求出根数,防止是负数
ans = ans + 1 #以及为了防止非平方根。如 if (1)
if ans ** 3 < abs(x ):
print(x,'is not a perfece cube') #if 1
else:
if x < 0 :
ans = -ans
print('Cube root of',x,'is ',ans)
你可以试一下你要输入多少个数才能在结果出来的时候明显的感觉出时间间隔。
以上如果有不会的话可以加一下我的qq
让本人来为你们排忧解难
QQ:2596086597