c++ 随机生成社区数据
来源:互联网 发布:国家社科期刊数据库 编辑:程序博客网 时间:2024/06/05 06:24
#include<stdio.h>#include <algorithm>#include<vector>#include<time.h>#include<stdlib.h>#include<math.h>#include<map>using namespace std;const int N = 1000005;vector<int> g[N];map<int,vector<int> > mp;int getRand(int n){int value = (rand()%n)*(rand()%n);//printf("%d\n",value);return value%n;}int main(){int n,m;int i,j,k;FILE *f_input = fopen("graph.txt","w");FILE *f_result = fopen("result.txt","w");srand(time(NULL));//n = 375000;//m = 100; printf("input n:");scanf("%d",&n);printf("input m:");scanf("%d",&m);//create a graph//int size = 3750;int size = n/m;fprintf(f_result,"%d\n",size);for(i =0;i<m;i++)mp[i]=(vector<int>)NULL;for(i=0;i<size;i++){vector<int> v;map<int,int> vis;//if(i%100 ==0 ) printf("%d\n",i);fprintf(f_result,"%d %d\n",i,m);for(j=0;j<m;j++){int value = getRand(n);if(vis[value]) {j--;continue;}vis[value] =1;//v.push_back(value);if(find(mp[j].begin(),mp[j].end(),value)==mp[j].end()){mp[j].push_back(value);v.push_back(value);fprintf(f_result,"%d ",value);}else{j--;}}for(vector<int>::iterator it2=v.begin();it2!=v.end();++it2)printf("%d ",*it2); printf("\n");for(map<int,vector<int> >::iterator it=mp.begin();it!=mp.end();++it){printf("%d ",it->first);for(vector<int>::iterator it1=it->second.begin();it1!=it->second.end();it1++)printf("%d ",*it1);printf("\n");}printf("\n");fprintf(f_result,"\n");for(j=0;j<m;j++){int len = getRand(2*m);for(k=0;k<len;k++){int key = getRand(m);if(key == j) {k--;continue;}//if(find(g[v[j]].begin(),g[v[j]].end(),v[key])!=g[v[j]].end()) {k--;continue;} //printf("%d ",find(g[v[j]].begin(),g[v[j]].end(),v[key])!=g[v[j]].end());//printf("%d\n",key);g[v[j]].push_back(v[key]); g[v[key]].push_back(v[j]);//vector<int>::iterator it= g[v[j]].begin();//vector<int>::iterator end = g[v[j]].end();// for(;it!=end;++it)//printf("%d ",*it);}printf("\n\n\n");}}printf("\n");for(i=0;i<n;i++){//if(i%100 ==0 )printf("%d\n",i);if(g[i].size()==0) continue;fprintf(f_input,"%d %d",i,i);for(j=0;j<g[i].size();j++){fprintf(f_input," %d",g[i][j]);printf("%d ",g[i][j]);}fprintf(f_input,"\n");printf("\n");}return 0;}
0 0
- c++ 随机生成社区数据
- matlab生成随机数据
- rand生成随机数据
- 随机数据生成
- EXCEL生成正态分布随机数据
- 用已有数据生成随机测试数据
- 生成有偏随机数据
- js随机生成模拟数据
- C实例---生成随机数组
- 随机生成数据 文件数据的输入输出
- mysql随机数据生成并插入
- 随机不重复生成大数据
- 根据20,80原则生成随机数据
- mysql造数据-随机字符生成
- Excel随机生成特定格式数据
- 表达式生成满足条件的随机数据
- 使用vs2010生成SQL Server 随机数据
- 随机生成不重复的数据
- Linux /dev目录详解
- cocos2d-x加入控制台程序代码
- 羊皮卷全集
- 一点思考
- OJ中c++和G++的一些区别
- c++ 随机生成社区数据
- Android批量插入数据到SQLite数据库
- Android 按键消息处理
- 【OpenCV】基于Adaboost和Haar-like特征人脸识别
- asp购物车源码
- javascript函数,变量声明及作用域详解
- PHP一个公司联系页面
- 编写一函数,由实参数来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述的结果
- 【OpenCV】openCV2.4.9+VS2010链接库配置