본문 바로가기

Programming/Algorithm

빠르게 랜덤변수 발생시키기

int g_seed;

int fastrand() {


g_seed = (214013 * g_seed + 2531011);

return (g_seed >> 16) & 0x7FFF;

}


기존에는 아래와 같은 방식으로 랜덤 변수를 생성하였었다.

time_t seconds;

time(&seconds);

srand((unsigned int)seconds);

//srand((unsigned)time(0));

v0 = rand() % 10;


하지만 이 방식은 초당으로 seed 가 변해서 그런지, 랜덤숫자가 빠르게 변하지 않는 단점이 있다.


이 대신에 fastrand 를 사용하면, 빠른 속도로 랜덤한 변수를 얻을 수 있다.

'Programming > Algorithm' 카테고리의 다른 글

visual studio 에서 stack size 유추 / set 하기  (0) 2016.05.12
각종 알고리즘 링크  (0) 2016.03.08
Tree  (0) 2016.03.08
root 계산 함수 만들기  (0) 2016.02.22
최소공배수, 최대공약수 - 유클리드 호제법  (0) 2016.02.16