[發明專利]隨機數的生成及獲取方法和裝置有效
| 申請號: | 201610152995.2 | 申請日: | 2016-03-17 |
| 公開(公告)號: | CN107203365B | 公開(公告)日: | 2020-09-08 |
| 發明(設計)人: | 文家祥 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F7/58 | 分類號: | G06F7/58 |
| 代理公司: | 北京清亦華知識產權代理事務所(普通合伙) 11201 | 代理人: | 張大威 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 隨機數 生成 獲取 方法 裝置 | ||
本申請公開了一種隨機數的生成及獲取方法和裝置,其中,該生成方法包括:生成隨機數存儲數組,其中,隨機數存儲數組包括N個存儲單元,每個存儲單元存儲一個隨機數,其中,N為正整數;對隨機數存儲數組中的存儲單元進行隨機混排;以及接收隨機數獲取指令,并根據隨機數獲取指令從隨機數存儲數組中對應的存儲單元中讀取存儲單元存儲的隨機數。通過該申請實施例,可以在較短的單位時間內多次獲取的隨機數重復率低,且分布均衡,因此本申請的隨機數生成方法及裝置具有較好的隨機性。
技術領域
本申請涉及計算機技術領域,尤其涉及一種隨機數的生成及獲取方法和裝置。
背景技術
隨著隨機數在計算機領域應用越來越廣,對產生的隨機數有越來越高的要求。目前,常用隨機數產生的方法有兩種,一種是軟件方式,用系統時間作為隨機數產生的種子,再根據系統函數產生隨機數。另一種是硬件方式,設計產生隨機數的硬件設備,根據隨機信號產生隨機數。
但是,軟件使用系統默認的隨機數生成方法存在以下缺點:如果在同一時間點(同一秒,或者同一毫秒)下,產生的隨機數重復概率很高,從而導致隨機數分布不均衡,即產生偽隨機數。因為,在計算機應用系統中,使用時間做為隨機數產生的種子,在較短時間內,例如在相同毫秒或秒數的時間段內生產的隨機數,因時間種子數相等。因此生成的隨機數會存在重復率高,且分布不均衡的缺點。
發明內容
本申請的目的旨在至少在一定程度上解決上述的技術問題之一。
為此,本申請的第一個目的在于提出一種隨機數的生成方法,該方法通過生成包括N個存儲單元存儲隨機數的隨機數存儲數組,接著對隨機數存儲數組中的存儲單元進行隨機混排,當接收隨機數獲取指令時,從隨機數存儲數組中對應的存儲單元讀取隨機數,通過該申請實施例,可以在較短的單位時間內多次獲取的隨機數重復率低,且分布均衡,因此本申請的隨機數生成方法具有較好的隨機性。
本申請的第二個目的在于提出了一種隨機數的生成裝置。
本申請的第三個目的在于提出了一種隨機數的獲取方法。
本申請的第四個目的在于提出了一種隨機數的獲取裝置。
為達上述目的,根據本申請第一方面實施例提出的一種隨機數的生成方法,包括以下步驟:生成隨機數存儲數組,其中,所述隨機數存儲數組包括N個存儲單元,每個所述存儲單元存儲一個隨機數,其中,N為正整數;對所述隨機數存儲數組中的存儲單元進行隨機混排;以及接收隨機數獲取指令,并根據所述隨機數獲取指令從所述隨機數存儲數組中對應的存儲單元中讀取所述存儲單元存儲的隨機數。
通過本申請實施例的隨機數生成方法,首先生成包括N個存儲單元且每個存儲單元存儲一個隨機數的隨機數存儲數組,接著對隨機數存儲數組中的存儲單元進行隨機混排,從而可以在接收到隨機數獲取指令時,從隨機數存儲數組中對應的存儲單元中讀取存儲單元存儲的隨機數。由于在隨機數存儲數組中對存儲單元進行了隨機混排,從而實現了在較短的單位時間內多次獲取的隨機數重復率低,且分布均衡。因此本申請的隨機數生成方法具有較好的隨機性。
在本申請的一個實施例中,所述N個存儲單元中存儲的隨機數均不相同。
在本申請的一個實施例中,所述的隨機數的生成方法,每個所述存儲單元具有標識值,其中,所述對所述隨機數存儲數組中的存儲單元進行混排具體包括:根據隨機函數生成隨機值,并根據所述隨機值生成待調換存儲單元的標識值;以及根據所述標識值和預設調換規則將所述待調換存儲單元與目標存儲單元中的隨機數進行調換。
在本申請的一個實施例中,所述根據隨機函數生成隨機值具體包括:當i大于1且小于N時,根據當前時間和第i-1次隨機值生成第i次隨機值,其中,i為調換次數;當i等于1時,根據當前時間生成所述第i次隨機值。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610152995.2/2.html,轉載請聲明來源鉆瓜專利網。





