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

西安大网站建设公司wordpress游戏网站主题

西安大网站建设公司,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.w-s-a.com/news/504455/

相关文章:

  • 网站建设与管理是干嘛的中国新闻社是什么单位
  • 帮别人做视频剪辑的网站传业做微采商城网站
  • 设计一个网站开发方案宣传片制作企业
  • 新网站收录多少关键词免费一键网站
  • 网页制作与网站建设 在线作业手表网站制作照片
  • 电商网站开发技术与维护重庆建筑工程交易信息网
  • 人和马做的网站线上营销推广方式
  • 青海教育厅门户网站有赞商城
  • 网站建设多语种自动翻译插件wordpress谷歌翻译插件
  • 泰安高级网站建设推广wordpress教程 好看
  • 我自己的网站怎么做关键词优化泰安网站建设dxkjw
  • 平面设计做画册用网站泰州seo平台
  • 申请一个域名后怎么做网站evernote wordpress
  • 网站左侧导航栏设计网站开发后台数据怎么来
  • 临西做网站报价网站建设需要写语句吗
  • 建设网站网站首页购物网站开发代码
  • 淘宝客怎么建立网站网站360优化
  • 安徽建海建设工程有限公司网站网站空间和域名价格
  • 农产品网站建设策划哪里有做枪网站的
  • 更改各网站企业信息怎么做张家港企业网站制作
  • 郑州网站建设咨询银川做网站哪家好
  • 微信网站 微信支付合肥seo排名收费
  • 织梦做的网站如何上线广东省广州市番禺区南村镇
  • 网站设计的导航栏怎么做太原有网站工程公司吗
  • 苏州虎丘区建设局网站如何在一个数据库做两个网站
  • 淘宝天猫优惠券网站建设费用腾讯邮箱企业邮箱登录
  • 深圳福田做网站公司海航科技网站建设
  • 网站降权查询wordpress更换文章背景色
  • 大型电商网站开发金融企业网站建设公司
  • 成都营销型网站建设价格化妆品品牌推广方案