C#短時間內(nèi)產(chǎn)生大量不重復(fù)的隨機(jī)數(shù)
更新時間:2013年02月14日 18:28:05 作者:
在C#編程中,經(jīng)常會碰到產(chǎn)生隨機(jī)數(shù)的情況,并且是在短時間內(nèi)產(chǎn)生一組隨機(jī)數(shù)。如果這組隨機(jī)數(shù)中有大量重復(fù)的,則達(dá)不到我們的要求
生成隨機(jī)數(shù)可以用偽隨機(jī)數(shù)發(fā)生器Random,受種子控制生成偽隨機(jī)數(shù),默認(rèn)以當(dāng)前時間值為種子。如果程序運(yùn)行的很快,就會導(dǎo)致在幾乎同一時刻運(yùn)行多次,肯定會有重復(fù)的。比如我們要生成1到10之間的5個隨機(jī)數(shù),則經(jīng)常會產(chǎn)生 2 2 1 1 1這樣的情況,那么如何得到非常隨機(jī)的不那么重復(fù)的隨機(jī)數(shù)呢?比如 4 2 3 3 5這樣的。
有人說用Thread.Sleep(5) ,但我不推薦,因為這樣會使系統(tǒng)減緩運(yùn)行。
我采取的方法是:用種子Guid.NewGuid().GetHashCode(),在短時間里不會出現(xiàn)大量重復(fù)。
有人說用Thread.Sleep(5) ,但我不推薦,因為這樣會使系統(tǒng)減緩運(yùn)行。
我采取的方法是:用種子Guid.NewGuid().GetHashCode(),在短時間里不會出現(xiàn)大量重復(fù)。
您可能感興趣的文章:
- c# Random快速連續(xù)產(chǎn)生相同隨機(jī)數(shù)的解決方案
- C#生成指定范圍內(nèi)的不重復(fù)隨機(jī)數(shù)
- C#中獲取、生成隨機(jī)數(shù)的三種方法
- 用C#生成不重復(fù)的隨機(jī)數(shù)的代碼
- C#實現(xiàn)在兩個數(shù)字之間生成隨機(jī)數(shù)的方法
- C#生成互不相同隨機(jī)數(shù)的實現(xiàn)方法
- c#獲取相同概率隨機(jī)數(shù)的算法代碼
- C# 生成隨機(jī)數(shù)的代碼
- C#利用Random得隨機(jī)數(shù)求均值、方差、正態(tài)分布的方法
- C#實現(xiàn)的簡單隨機(jī)數(shù)產(chǎn)生器功能示例
相關(guān)文章
C#實現(xiàn)HSL顏色值轉(zhuǎn)換為RGB的方法
這篇文章主要介紹了C#實現(xiàn)HSL顏色值轉(zhuǎn)換為RGB的方法,涉及C#數(shù)值判定與轉(zhuǎn)換的相關(guān)技巧,需要的朋友可以參考下2015-06-06
C#中Activator.CreateInstance()方法用法分析
這篇文章主要介紹了C#中Activator.CreateInstance()方法用法,實例分析了C#中Activator.CreateInstance()方法的功能、定義及使用技巧,需要的朋友可以參考下2015-03-03
C#中緩存System.Web.Caching用法總結(jié)
本文詳細(xì)講解了C#中緩存System.Web.Caching的用法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-04-04
C#實現(xiàn)解析百度天氣數(shù)據(jù),Rss解析百度新聞以及根據(jù)IP獲取所在城市的方法
這篇文章主要介紹了C#實現(xiàn)解析百度天氣數(shù)據(jù),Rss解析百度新聞以及根據(jù)IP獲取所在城市的方法,非常具有實用價值,需要的朋友可以參考下2014-10-10

