当前位置:  编程技术>.net/c#/asp.net

用C#在短时间内产生大量不重复的随机数的方法

    来源: 互联网  发布时间:2014-08-30

    本文导语:  在C#编程中,经常会碰到产生随机数的情况,大多是要求在短时间内产生一组随机数。 但可能的一种情况是,随机数有大量的重复,这是比较烦人的。 生成随机数可以用伪随机数发生器Random,受种子控制生成伪随机数,默认以...

在C#编程中,经常会碰到产生随机数的情况,大多是要求在短时间内产生一组随机数。
但可能的一种情况是,随机数有大量的重复,这是比较烦人的。

生成随机数可以用伪随机数发生器Random,受种子控制生成伪随机数,默认以当前时间值为种子。如果程序运行的很快,就会导致在几乎同一时刻运行多次,肯定会有重复的。比如我们要生成1到10之间的5个随机数,则经常会产生 2 2 1 1 1这样的情况,那么如何得到非常随机的不那么重复的随机数呢?比如 4 2 3 3 5这样的。

有人说用Thread.Sleep(5) ,但我不推荐,因为这样会使系统减缓运行。

给出的方法是:用种子Guid.NewGuid().GetHashCode(),在短时间里不会出现大量重复。


    
 
 

您可能感兴趣的文章:

  • c#的时间日期操作示例分享(c#获取当前日期)
  • 深入Unix时间戳与C# DateTime时间类型互换的详解
  • C#将时间转成文件名使用方法
  • C#短时间内产生大量不重复的随机数
  • C# 得到某一天的起始和截止时间的代码
  • C#获取时间差的简单示例
  • c# 生成随机时间的小例子
  • 一些关于c#与Sql的时间的操作
  • C# Timer定时器控件运行时需要修改系统时间的问题
  • C#简单获取时间差的小例子
  • C#测量程序运行时间及cpu使用时间实例方法
  • c#(asp.net) 时间操作基类(支持长短日期与时间差)
  • 解析c#显示友好时间的实现代码
  • c# 返回文章发表时间差的代码
  • c#获取季度时间实例代码(季度的第一天)
  • c#和sql如何获得时间间隔的方法
  • c#中返回文章发表的时间差的示例
  • C#中动态显示当前系统时间的实例方法
  • c++与c#的时间转换示例分享
  • C#中日期时间的简单操作
  • Cocos2d-x中获取系统时间和随机数实例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 编写脚本:怎样在vmstat 1产生的结果中,在每行前面加上当前时间
  • php将标准字符串格式时间转换成unix时间戳_strtotime
  • linux设置时间和把时间从UTC转成本地时间的
  • Linux下用ntpdate同步时间及date显示设置时间
  • 用哪些函数可以得到执行一个程序的系统CPU时间,用户CPU时间,时钟时间啊?
  • python下用os.execl执行centos下的系统时间同步命令ntpdate
  • 用户CPU时间 系统CPU时间 时钟时间 不懂
  • Python将日期时间按照格式转换成字符串
  • 用touch命令修改访问时间时,却发现连修改时间和状态时间也改了.疑惑
  • Linux/CentOS下的CST和UTC时间的区别以及不一致的解决方法
  • ★★怎样获得一个文件的创建时间,修改时间,和访问时间?急!在线等待...
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • arm2440下,系统时间和硬件时间一致,但创建文件得到的时间不一致,想过几种方法,似乎无用
  • php将unix时间戳转换成字符串时间函数(date)
  • 获取系统时间和修改系统时间
  • Linux下gettimeofday()函数和clock()函数:精确到毫秒级的时间
  • 关于内核时间与用户时间;我在线等你回复,所以你要告诉我!
  • mysql中字符串和时间互相转换的方法(自动转换及DATE_FORMAT函数)
  • 求助,Linux系统时间总比硬件时间慢!
  • aps.net session全面介绍(生命周期,超时时间)
  • UNIX的时间为什么会隔一段时间就提前一个小时
  • php时间格式化函数date介绍及用法参考
  • 如何让centos系统时间和另外一台window系统时间保持同步


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3