复杂网络之ER随机网络的构建、度分布计算、可视化实现(python实现)

本文使用Python在Anaconda的Spyder编辑器环境下,实现ER随机网络的生成,探讨了Python在数组初始化上的便利性,并提供了查看邻接矩阵、度分布文件的方法。通过不同节点数和连边概率的测试,验证了代码的正确性,同时针对可能出现的问题给出了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验环境

我用的是Anaconda 自带的Spyder编辑器,python3.8

此算法在上一篇算法复杂网络——随机网络ER的构造C++实现及测试的基础上用python重写了,在编写过程中发现python对数组的初始化非常方便,仅用np.zeros()函数就可以生成,而C++要用双层for循环才可以。在这里我默认系统资源非常充足,就未对内存申请失败进行判断,实际上在测试时节点数1000就报错内存不足。但是算法的整体框架都是对的,用了一个晚上写好的,早上来实验室修改了几处小错误。

 友情提醒:如果import包的内容报错,请自行百度下载相应的包头,除此之外正常运行不会出错的。

代码使用方法:打开Python编辑器,复制导入,测试成功的话可以看到输出的ER网络以及代码所在位置写入成功的两个文件。 

实验代码

代码流程部分在上一篇中已经介绍的比较细致了,这里不再赘述。 不同的是将C++中write2File_degreedistribut()函数直接写入clalulateDegreeDistribution()函数中(本来是分开写的,但在传形参的时候出现了数组下标越界的问题,没有

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

像素棱镜

你的鼓励将是我前进的动力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值