玩蛇网提供最新Python编程技术信息以及Python资源下载!

Python计算n*n网格生成树数目的方法

python 培训

Python计算n*n网格生成树数目的方法源码,需要用到Python math模块中的方法。这是一篇关于Python算法分析相关的文章,对于理科比较好的同学可能没什么难度。Python算法方法不是强项的朋友们,如果有遇到Python 生成树数目计算之类问题的时候,可以参考下,希望对大家能有所帮助。

Python计算n*n网格生成树数目的方法源码如下:

from math import cos
#导入模块方法
#www.iplaypython.com

#定义函数,正式代码部分开始
def eigenvalues_of_laplacian(n):
    ew = [2*(2-cos(i*pi/n)-cos(j*pi/n)) for i in range(n) for j in range(n)]

    return ew

def num_of_spanning_trees(n):
    ew = eigenvalues_of_laplacian(n)

    return reduce(lambda x,y:x*y, ew[1:])/n**2

如上源码中用了一行代码的形式,对于初学者来说会比较难于理解。建议初学Python的朋友们要条理清晰的把代码写出来,尽量不要用一行搞定的形式。

其它Python算法相关文章推荐:
1、Python筛法求质数(素数)的生成器示例
2、用Python求素数的快速算法源码示例

玩蛇网原创,转载请注明文章出处和来源网址:http://www.iplaypython.com/code/algorithm/a2598.html



微信公众号搜索"玩蛇网Python之家"加关注,每日最新的Python资讯、图文视频教程可以让你一手全掌握。强烈推荐关注!

微信扫描下图可直接关注

玩蛇网Python新手QQ群,欢迎加入: ① 240764603 玩蛇网Python新手群
文章发布日期:2016-01-11 14:02 玩蛇网 www.iplaypython.com

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
相关文章推荐
别人正在看
特别推荐
去顶部去底部