资源简介
采用链表,根据ER随机图模型建立随机图,并计算它的平均度以及平均聚集度
代码片段和文件信息
#include
#include
#define MAXN 10000 //MAXN determine the node of the graph
#define MAXM 50000000
#define P 10
long firstEdge[MAXN]now[MAXN]degree[MAXN]CC[MAXN];
long nextEdge[MAXM]endNode[MAXM];
long distribute[MAXN];
long edgeNumber nodeNumber;
float averDegreeaverCC;
int addEdge(long aNode long bNode)//creat a neighbor list in an descending order
{
long p;
p = random() % 100;
if (p > P) return 0;
nextEdge[++edgeNumber] = firstEdge[aNode];
firstEdge[aNode] = edgeNumber;
endNode[edgeNumber] = bNode;
nextEdge[++edgeNumber] = firstEdge[bNode];
firstEdge[bNode] = edgeNumber;
endNode[edgeNumber] = aNode;
return 1;
}
void calcDegree()
{
long i;
long curEdge;
for (i=0; i {
curEdge = firstEdge[i];
while (curEdge)
{
degree[i] ++;
curEdge = nextEdge[curEdge];
}
distribute[degree[i]] ++;
}
for (i=0; i averDegree += degree[i];
averDegree = (float)(averDegree / MAXN);
}
void calcCC()
{
long ijk;
long curEdgeIcurEdgeJ;
long tempNode;
int tri notri;
long nodeI nodeJ;
for (i=0; i {
curEdgeI = firstEdge[i];
while (curEdge
- 上一篇:Qt Quick之美图秀秀
- 下一篇:矩阵算法相关代码
相关资源
- PnP solvers C++版本,包括P3Pf,Epnp等
- C++模拟退火算法求二维函数极值
- WM(Wu-Manber)算法详解及C语言实现
- 基于c语言的银行业务模拟
- 模拟退火遗传算法的C++程序
- c++ primer plus 第6版 中文版pdf 高清完整
- c++ builder实现文件粉碎机的源码
- C++builder编写的简单科学计算器
- 观察者模式 c++ 实现
- 演示一个不断旋转、缩放和移动的正
- winternl.h
- NCDDE服务连接DDE封装的APIddehelper
- c++ primer 经典课件
- C++ Builder 2010 序列号+注册机(破解补
- C++ Primer中文版第五版带目录及源码
- 全国交通咨询模拟c语言版214055
- SPOOLing算法模拟 C++实现
- 模拟Ethernet帧的发送过程
- DHCP源码含server relay client
- 银行取号系统模拟,模拟窗口排队,
- OpenCV视频的保存以及显示
- 操作系统中的文件管理模拟
- VC++使用Webbrowser开发浏览器
- 模拟时钟转动程序
- C++primer第四版中文版.epub
- C++模拟ATM取款源代码
- c++中的chamfer matching 实现
- vigenere算法C语言实现
- 操作系统设备管理模拟 银行家算法
- OpenGL实现的三维桌球游戏模拟源代码
评论
共有 条评论