博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个随机数类
阅读量:7028 次
发布时间:2019-06-28

本文共 2395 字,大约阅读时间需要 7 分钟。

       本类思想:高性能计数器以微妙级累加数值,逢十进位。如果动态的单看数值最后一个数字,一定是在0-9之间不断旋转,就像一个滚动的俄罗斯轮盘,暂停时一定指向其中某一位数字并且指向哪个数字是不可预测的,当暂停次数足够多时,分布在各个数值上的概率无限接近。

using System.Runtime.InteropServices;namespace SuiJiShu{    ///     /// 随机数生成器    ///     public class SuiJiShuShengChengQi    {        //获取高性能计数器数值        [DllImport("kernel32.dll")]        extern static short QueryPerformanceCounter(ref long x);        ///         /// 十以内随机数        ///         /// 
public int ShiYiNeiSuiJiShu() { long _dangQianJiShuQiZhi = 0; QueryPerformanceCounter(ref _dangQianJiShuQiZhi); string _dangQianJiShuQiZhiString = _dangQianJiShuQiZhi.ToString(); return int.Parse(_dangQianJiShuQiZhiString.Remove(0, _dangQianJiShuQiZhiString.Length - 1)); } /// /// 百以内随机数 /// ///
public int BaiYiNeiSuiJiShu() { long _dangQianJiShuQiZhi = 0; QueryPerformanceCounter(ref _dangQianJiShuQiZhi); string _dangQianJiShuQiZhiString = _dangQianJiShuQiZhi.ToString(); return int.Parse(_dangQianJiShuQiZhiString.Remove(0, _dangQianJiShuQiZhiString.Length - 2)); } /// /// 千以内随机数 /// ///
public int QianYiNeiSuiJiShu() { long _dangQianJiShuQiZhi = 0; QueryPerformanceCounter(ref _dangQianJiShuQiZhi); string _dangQianJiShuQiZhiString = _dangQianJiShuQiZhi.ToString(); return int.Parse(_dangQianJiShuQiZhiString.Remove(0, _dangQianJiShuQiZhiString.Length - 3)); } }}
//ShiYiNeiSuiJiShu运行一百万次数值分布:0:978721:1000822:1002373:998954:1005565:999956:1003847:999288:1003399:100712//测试代码Dictionary
> _tongJiZiDian = new Dictionary
>();for (int i = 0; i < 10; i++){ _tongJiZiDian.Add(i, new List
());}SuiJiShuShengChengQi _SuiJiShuShengChengQi = new SuiJiShuShengChengQi();for (int i = 0; i < 1000000; i++){ int _suiJiShu = _SuiJiShuShengChengQi.ShiYiNeiSuiJiShu(); _tongJiZiDian[_suiJiShu].Add(_suiJiShu);}StringBuilder _sss = new StringBuilder();foreach (KeyValuePair
> key in _tongJiZiDian){ _sss.Append(key.Key.ToString() + ":" + key.Value.Count.ToString() + "\r\n");}

 

写作时间:2018-11-07

=====================================================================================

本文只代表本人的见解,可能存在错误,仅用于技术交流。如果你喜欢该文,可以扫下面的二维码打赏我(打赏敬请备注“博客园打赏”五字)。

 

 

转载于:https://www.cnblogs.com/j20171203/p/9922447.html

你可能感兴趣的文章
从算法原理,看推荐策略
查看>>
学习笔记TF060:图像语音结合,看图说话
查看>>
自定义控件 --- 电池icon
查看>>
嘻哈说:设计模式之工厂方法模式
查看>>
JS原生Ajax基本操作
查看>>
JS == 操作符的隐式转换,翻译ecma-262/5.1/#sec-11.6.1
查看>>
大三学生的第二个基于 React 框架的轮播图组件。
查看>>
工程实践:给函数取一个"好"的名字
查看>>
小猿圈python之九九乘法表、金字塔和杨辉三角
查看>>
说说如何使用 vue-router 插件
查看>>
警告忽略
查看>>
Java Bean + 注册验证
查看>>
通过mysql 插入一句话***
查看>>
centos 分区扩容
查看>>
JBoss EAP 6 monitoring using remoting-jmx and Zabbix
查看>>
邮件服务器
查看>>
OOAD-设计模式-原型模式
查看>>
Java FAQ(2)
查看>>
JavaScript常用事件总结
查看>>
squid在企业网中的应用
查看>>