1 package it.unimi.dsi.fastutil; 2 3 23 24 60 61 public interface Hash { 62 63 64 final public int DEFAULT_INITIAL_SIZE = 16; 65 66 final public float DEFAULT_LOAD_FACTOR = .75f; 67 68 final public float FAST_LOAD_FACTOR = .5f; 69 70 final public float VERY_FAST_LOAD_FACTOR = .25f; 71 72 final public int DEFAULT_GROWTH_FACTOR = 16; 73 74 final public byte FREE = 0; 75 76 final public byte OCCUPIED = -1; 77 78 final public byte REMOVED = 1; 79 80 83 84 final public int PRIMES[] = { 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 5, 7, 7, 7, 85 7, 7, 7, 7, 7, 7, 7, 7, 13, 13, 13, 13, 13, 13, 13, 13, 19, 19, 19, 19, 19, 86 19, 19, 19, 19, 19, 19, 19, 31, 31, 31, 31, 31, 31, 31, 43, 43, 43, 43, 43, 87 43, 43, 43, 61, 61, 61, 61, 61, 73, 73, 73, 73, 73, 73, 73, 103, 103, 109, 88 109, 109, 109, 109, 139, 139, 151, 151, 151, 151, 181, 181, 193, 199, 199, 89 199, 229, 241, 241, 241, 271, 283, 283, 313, 313, 313, 349, 349, 349, 349, 90 421, 433, 463, 463, 463, 523, 523, 571, 601, 619, 661, 661, 661, 661, 661, 91 823, 859, 883, 883, 883, 1021, 1063, 1093, 1153, 1153, 1231, 1321, 1321, 92 1429, 1489, 1489, 1621, 1699, 1789, 1873, 1951, 2029, 2131, 2143, 2311, 93 2383, 2383, 2593, 2731, 2803, 3001, 3121, 3259, 3391, 3583, 3673, 3919, 94 4093, 4273, 4423, 4651, 4801, 5023, 5281, 5521, 5743, 5881, 6301, 6571, 95 6871, 7129, 7489, 7759, 8089, 8539, 8863, 9283, 9721, 10141, 10531, 11071, 96 11551, 12073, 12613, 13009, 13759, 14323, 14869, 15649, 16363, 17029, 97 17839, 18541, 19471, 20233, 21193, 22159, 23059, 24181, 25171, 26263, 98 27541, 28753, 30013, 31321, 32719, 34213, 35731, 37309, 38923, 40639, 99 42463, 44281, 46309, 48313, 50461, 52711, 55051, 57529, 60091, 62299, 100 65521, 68281, 71413, 74611, 77713, 81373, 84979, 88663, 92671, 96739, 101 100801, 105529, 109849, 115021, 120079, 125509, 131011, 136861, 142873, 102 149251, 155863, 162751, 169891, 177433, 185071, 193381, 202129, 211063, 103 220021, 229981, 240349, 250969, 262111, 273643, 285841, 298411, 311713, 104 325543, 339841, 355009, 370663, 386989, 404269, 422113, 440809, 460081, 105 480463, 501829, 524221, 547399, 571603, 596929, 623353, 651019, 679909, 106 709741, 741343, 774133, 808441, 844201, 881539, 920743, 961531, 1004119, 107 1048573, 1094923, 1143283, 1193911, 1246963, 1302181, 1359733, 1420039, 108 1482853, 1548541, 1616899, 1688413, 1763431, 1841293, 1922773, 2008081, 109 2097133, 2189989, 2286883, 2388163, 2493853, 2604013, 2719669, 2840041, 110 2965603, 3097123, 3234241, 3377191, 3526933, 3682363, 3845983, 4016041, 111 4193803, 4379719, 4573873, 4776223, 4987891, 5208523, 5439223, 5680153, 112 5931313, 6194191, 6468463, 6754879, 7053331, 7366069, 7692343, 8032639, 113 8388451, 8759953, 9147661, 9552733, 9975193, 10417291, 10878619, 11360203, 114 11863153, 12387841, 12936529, 13509343, 14107801, 14732413, 15384673, 115 16065559, 16777141, 17519893, 18295633, 19105483, 19951231, 20834689, 116 21757291, 22720591, 23726449, 24776953, 25873963, 27018853, 28215619, 117 29464579, 30769093, 32131711, 33554011, 35039911, 36591211, 38211163, 118 39903121, 41669479, 43514521, 45441199, 47452879, 49553941, 51747991, 119 54039079, 56431513, 58930021, 61539091, 64263571, 67108669, 70079959, 120 73182409, 76422793, 79806229, 83339383, 87029053, 90881083, 94906249, 121 99108043, 103495879, 108077731, 112863013, 117860053, 123078019, 128526943, 122 134217439, 140159911, 146365159, 152845393, 159612601, 166679173, 123 174058849, 181765093, 189812341, 198216103, 206991601, 216156043, 124 225726379, 235720159, 246156271, 257054491, 268435009, 280319203, 125 292730833, 305691181, 319225021, 333358513, 348117151, 363529759, 126 379624279, 396432481, 413983771, 432312511, 451452613, 471440161, 127 492312523, 514109251, 536870839, 560640001, 585461743, 611382451, 128 638450569, 666717199, 696235363, 727060069, 759249643, 792864871, 129 827967631, 864625033, 902905501, 942880663, 984625531, 1028218189, 130 1073741719, 1121280091, 1170923713, 1222764841, 1276901371, 1333434301, 131 1392470281, 1454120779, 1518500173, 1585729993, 1655935399, 1729249999, 132 1805811253, 1885761133, 1969251079, 2056437379, 2147482951 }; 133 134 135 150 151 public interface Strategy<K> { 152 153 158 159 public int hashCode( K o ); 160 161 167 public boolean equals( K a, K b ); 168 } 169 170 } 171 | Popular Tags |