예제 #1
0
 public BloomFilter(int targetCapacity, Func <T, int> secondaryHash_NotGetHashCode)
     : this(targetCapacity, BloomFilter <T> .CalculateHashCount(targetCapacity, 0.001), 0.001, secondaryHash_NotGetHashCode)
 {
 }
예제 #2
0
 public BloomFilter(int targetCapacity, double falsePositiveRate, Func <T, int> secondaryHash_NotGetHashCode)
     : this(targetCapacity, BloomFilter <T> .CalculateHashCount(targetCapacity, falsePositiveRate), falsePositiveRate, secondaryHash_NotGetHashCode)
 {
 }
예제 #3
0
 private static int CalculateHashCount(int capacity, double falsePositiveRate)
 {
     return((int)Math.Round(Math.Log(2.0) * (double)BloomFilter <T> .CalculateBitArrayLength(capacity, falsePositiveRate) / (double)capacity));
 }