math_util.cc
来自「这是关于覆盖网的各种负载均衡算法的程序。好好研究」· CC 代码 · 共 54 行
CC
54 行
/* $Id: math_util.cc,v 1.8 2005/08/02 19:35:49 jonathan Exp $ * Jonathan Ledlie, Harvard University. * Copyright 2005. All rights reserved. */#include "error.h"#include "math_util.h"double poisson (double mean) { double u; while ((u = randPct()) == 0.); return (-mean) * log(u);};int poisson (int mean) { return (int)(poisson((double)mean));}double mean (vector<double> v) { double sum = 0.; for (int i = 0; i < v.size(); i++) { sum += v[i]; } return sum/(double)v.size();}double square (double x) { return x*x;}double stddev (vector<double> v, double mean) { double sum = 0.; if (v.size() <= 1) return 0.; for (int i = 0; i < v.size(); i++) { sum += pow(v[i]-mean,2); } return sqrt (sum/(v.size()-1));}double randPct () { double ret = Rand (); ASSERT (ret >= 0. && ret < 1); return ret;}// Returns a number (a,b]int unifRand (int a, int b) { ASSERT (a >= 0 && b >= 0); int diff = ABS ((a-b)); int randValue = (int)(Rand()*(double)diff); return (int)(a + randValue);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?