Hola
CalgaryCorpus intenté hacer esto para el tema de las colisiones:
Código Java:
Ver originalprivate int getIndex
(Object key
) { int ret = key.hashCode() % table.length;
if(ret < 0) {
ret += table.length;
}
return ret;
}
private void addEntry(K key, V value){
if(size >= table.length * 3/4){
Entry<K,V>[] tmp = table;
size = 0;
cap = 2 * cap;
table = new Entry[cap];
for(int i = 0; i < cap; i++){
table[i] = null;
}
for (Entry<K, V> e : tmp) {
if(e != null){
put(e.getKey(),e.getValue());
}
} //table = Arrays.copyOf(table, table.length * 2);
}
int index = getIndex(key);
table[index] = new Entry(key, value);
size++;
}
Pero me terminó haciendo esto:
run:
1
1
2
2
3
3
0
1
1
2
2
3
3
4
---PROBANDO MAP1---
tamaño -> 4
--valores--
--claves--
--entradas--
¿Que estrategia me dirías para el tema de las colisiones?
Espero sus respuestas y Saludos.