当前位置: 首页 > news >正文

临沂做网站电话微信公众号 wordpress

临沂做网站电话,微信公众号 wordpress,上海网络维护服务,做企划的网站前言 我们通常在写一个数据结构后#xff0c;需要去测试其正确性和性能比较#xff0c;那在平常手动输入数据的方式太鸡肋#xff0c;并且不具有普遍性和随机性。基于这个原因#xff0c;我们必须要掌握设置随机数#xff0c;不但可以给我们提供更多的数据#xff0c;还可…前言 我们通常在写一个数据结构后需要去测试其正确性和性能比较那在平常手动输入数据的方式太鸡肋并且不具有普遍性和随机性。基于这个原因我们必须要掌握设置随机数不但可以给我们提供更多的数据还可以让数据具有普遍意义满足我们的测试需求。 一、有关随机数的函数 1. srand void srand (unsigned int seed);函数解析  seed就相当于一颗种子srand函数会种这个随机数种子种子对应一个随机数后面使用rand函数可以接收这个随机数。         经过测试当我们的种子是固定的每次程序运行时rand获得的随机数也是固定的无法做到在一个程序里获得真正意义的随机数所以参数通常使用的是time(NULL)time函数是获得系统的时间因为系统的时间一直在变那种子就也都是不同的所以每次程序运行时rand获得的数也一直在变这才是真正意义的随机数。 为什么参数一定时获得的随机数是固定的 首先计算机并不能产生真正的随机数而是将一些无规则排列的数字存储在电脑里再把这些数字划分为相等的N份并为每份加上一个编号。用srand()函数获取这个编号然后rand()就按顺序获取这些数字。 头文件 #include stdlib.h 参数seed 推荐使用time(NULL)用时间做参数可以保证每次程序运行时生成的随机数是随机的 time函数头文件#include time.h 返回值 无返回值 2. rand int rand (void); 头文件 #include stdlib.h 函数解析 得到srand生成的随机数并返回这个随机数 返回值 返回的是随机数范围0RAND_MAXRAND_MAX  2147483647 二、测试模版 int main() {const size_t N 10000;unordered_setint us; //容器1setint s; //容器2 vectorint v; //使用vector保存插入的数据v.reserve(N); //防止多次扩容造成消耗提前一次预留N个空间srand(time(nullptr)); //种随机数种子使用time做参数可以保证每次运行都是不一样的for (size_t i 0; i N; i){v.push_back(rand()); // N比较大时重复值比较多//v.push_back(rand()i); // 重复值相对少//v.push_back(i); // 没有重复有序}//测试容器插入的性能size_t begin1 clock();for (auto e : v){s.insert(e);}size_t end1 clock();cout set insert: end1 - begin1 endl;size_t begin2 clock();for (auto e : v){us.insert(e);}size_t end2 clock();cout unordered_set insert: end2 - begin2 endl;//测试容器查找的性能size_t begin3 clock();for (auto e : v){s.find(e);}size_t end3 clock();cout set find: end3 - begin3 endl;size_t begin4 clock();for (auto e : v){us.find(e);}size_t end4 clock();cout unordered_set find: end4 - begin4 endl endl;cout 插入数据个数 s.size() endl;cout 插入数据个数 us.size() endl endl;//测试容器删除的性能size_t begin5 clock();for (auto e : v){s.erase(e);}size_t end5 clock();cout set erase: end5 - begin5 endl;size_t begin6 clock();for (auto e : v){us.erase(e);}size_t end6 clock();cout unordered_set erase: end6 - begin6 endl endl;return 0; } 三、反思与总结 由于目前能力不足还需要仔细研究源码中srand和rand的底层实现在未来某段时间会更新剖析源码实现random.c source code [glibc/stdlib/random.c] - Codebrowser
http://www.dnsts.com.cn/news/214680.html

相关文章:

  • 想学学做网站安徽工业大学两学一做网站
  • 建设部监理工程师报考网站线下编程课程收费标准
  • 设计优秀网站作品网页视频制作软件
  • 建设网站需要准备什么资料搜索引擎优化师工资
  • 广元百度做网站多少钱下载网站所有网页
  • 网站左侧悬浮代码网站由哪儿三部分组成
  • 无锡网站建设方式网站推广计划机构
  • 网站建设先进工作者网站建设 xplogo
  • 深圳网站建设怎么做邯郸市教育公共服务平台
  • 织梦建站要多少钱陕西服装网站建设
  • 优秀门户网站欣赏做文库网站怎么赚钱吗
  • 宁波网站建设平台分析小蜜蜂网站建设
  • 网站的总体架构WordPress扁平化模板
  • 怎么开一个做网站的工作室个人网址是什么
  • 阜阳网站制作公司报价wordpress 总访问量
  • 为什么检测行业不能用网站做青云 wordpress加速
  • asp.net 网站 项目 区别湖南建设监理工程网站
  • seo网站技术培训如何建立网站建设规划
  • 南京外贸网站建设系统福州最好的网站建设
  • 新做的网站怎样让百度收录淄博网站建设 招聘
  • 哪种网站语言最好wordpress目录标题
  • 移动应用开发公司网站模板抖音搜索关键词推广
  • 如何查看网站的建设者招聘模板制作app
  • 保健品做哪个网站好许昌企业网站去哪开发
  • 做网站用什么国外的空间比较好网站开发贴吧
  • 湖南省长沙建设工程造价站网站深圳公关公司推荐乐云seo
  • 网站制作论文范文wordpress 页脚居中
  • 东莞旅游网站建设开源的企业网站管理系统
  • 有哪些做文创产品的网站网站开发需要注册几类商标
  • 成年男女做羞羞视频网站有谁做彩票网站吗