8
A
回答
15
標準庫沒有。然而,Boost.Random的確如此。如果我是你,我會使用它。
6
GNU科學圖書館具有此功能。 GSL - Gaussian Distribution
+0
「將有「? – jalf 2009-07-10 13:55:22
+0
大聲笑,我寫了之前,我擡起頭的答案...我想我應該改變它:) – 2009-07-10 14:37:53
13
4
此問題的答案隨C++ 11更改,其中包含random header,其中包括std::normal_distribution。沃爾特布朗的文章N3551, Random Number Generation in C++11可能是這個圖書館更好的介紹之一。
下面的代碼說明了如何使用該標頭(see it live):
#include <iostream>
#include <iomanip>
#include <map>
#include <random>
int main()
{
std::random_device rd;
std::mt19937 e2(rd());
std::normal_distribution<> dist(2, 2);
std::map<int, int> hist;
for (int n = 0; n < 10000; ++n) {
++hist[std::floor(dist(e2))];
}
for (auto p : hist) {
std::cout << std::fixed << std::setprecision(1) << std::setw(2)
<< p.first << ' ' << std::string(p.second/200, '*') << '\n';
}
}
我提供的實施例以隨機數產生在C++ 11在回答一個更一般的設置爲C++ random float number generation與例如在Boost中也使用rand()
。
相關問題
- 1. 高斯分佈
- 2. Ruby中生成高斯(正態分佈)隨機數的代碼
- 3. 從CUDA中的高斯分佈生成隨機數
- 4. 生成從二元高斯分佈的手段
- 5. 如何用mysql自定義函數生成高斯分佈
- 6. 半高斯分佈樣本
- 7. 顛倒的高斯分佈
- 8. 如何在MATLAB中生成多重二維高斯圖像分佈
- 9. 使用高斯分佈在0和1之間生成隨機數
- 10. GLSL中的高斯分佈式僞隨機數發生器
- 11. OpenCL中的高斯分佈隨機數
- 12. 擬合高斯分佈到數據
- 13. 使用VB 6.0高斯分佈
- 14. 如何實現高斯分佈
- 15. 法線角偏差的高斯分佈
- 16. 帶有PHP的24h高斯分佈
- 17. 隨機double和高斯分佈
- 18. 如何繪製高斯分佈曲線
- 19. 在matlab中生成高斯數據
- 20. C++中的正態(高斯)分佈函數
- 21. wald分佈和反高斯分佈在scipy.stats
- 22. 高斯分佈和伽馬分佈的混合
- 23. 生成概率分佈
- 24. hazelcast分佈式ID生成
- 25. 有沒有辦法將3D高斯分佈或高斯混合分佈擬合到矢量上?
- 26. OpenCV:高效高斯差分
- 27. MATLAB高斯積分
- 28. 如何產生幾何或高斯分佈的數量從分佈均勻號碼MATLAB
- 29. 檢查數字是否形成鐘形曲線(高斯分佈)Python 3
- 30. 如何在R中的這兩個場景中生成高斯分佈的數據?
AC代碼片段可用於類似的,[稍後的問題(點擊這裏)](http://stackoverflow.com/questions/17995894/normalgaussian-distribution-function-in-c/23609868#23609868) – jcollomosse 2014-05-12 13:46:56