public WeightedRandom(AbstractRandomProvider provider) : this(WeightAlgorithm.FairBiased) { _randomProvider = provider ?? throw new Exception("Random provider is not instantiated."); }
private WeightedRandom(AbstractRandomProvider provider, WeightAlgorithm algorithm) { _randomProvider = provider ?? throw new Exception("Random provider is not instantiated."); this.algorithm = algorithm; }
private WeightedRandom(WeightAlgorithm algorithm) { _randomProvider = new SystemRandomProvider(); this.algorithm = algorithm; }