コード例 #1
0
        public Storage(CollisionResolver resolver, int capacity)
        {
            this.storagePrime = CalculateStorageSize(capacity);
            this.storage      = new Node[storagePrime];
            this.resolver     = resolver;

            this.resolver.storage = storage;

            storageLimit = storage.Length;
            if (resolver.HasCellar)
            {
                storageLimit = CalculateStorageSize((int)(storageLimit * 0.80));
                // Vitter, Jeffrey. (1982). Implementations for Coalesced Hashing.. Commun. ACM. 25. 911-926. 10.1145/358728.358745.
                // for PF90 graph on page 915 shows that 79-80%
            }
        }
コード例 #2
0
 public Storage(CollisionResolver resolver, int[] list) : this(resolver, list.Length)
 {
     this.AddRange(list);
     this.CalculateProbeNumber(list);
 }