[Python] 유사난수생성기 LCG(Linear Congruential Generator) 알고리즘
LCG의 존재는, random 모듈을 사용하지 않고 리스트 요소들을 shuffle 해야하는 파이썬 과제를 하다가 알게되었다. -과제의 출처는 42AI bootcamp python- Linear Congruential Generator(LCG)는 다음의 점화식을 따라 난수가 생성되는 알고리즘이다. $ X_{n+1} = (aX_{n}+c) \mod n $ 변수 a, c, m, 그리고 Xn 값이 난수의 주기에 큰 영향을 미친다. 0 < a < m 0 ≤ c < m 0 < m $X_{n}$ = seed (시작값) 이 난수 생성기는 최대값이 m인 난수를 발생시킨다. 또한, 변수에 의해 난수가 결정되기 때문에, 변수를 알면 난수를 예상할 수 있다. 그러니까 Pseudo 난수 생성기인것이다. 그다지 좋은 알고리즘이라..
알고리즘/Problem Solving
2020. 6. 4.