Muy buenas a todos, les comento que resolví el problema resulta que:
necesitaba una variable de carga de factor y otra más para mantener el órden de los datos
Código Java:
Ver originalprivate static final float LOAD_FACTOR = 0.75f;
private static int threshold;
también tenía que cambiar el constructor
Código Java:
Ver originalpublic MyMap(int xcap) {
if(xcap <= 0){
}
threshold = (int) (xcap * LOAD_FACTOR);
table = new Entry[xcap];
size = 0;
init();
}
además de rehacer el addEntry
Código Java:
Ver originalprivate void addEntry(K key, V value){
if(size >= threshold){
Entry newTable[] = new Entry[table.length * 2];
transfer(newTable);
table = newTable;
threshold = (int)(newTable.length * LOAD_FACTOR);
}
createEntry(key, value);
}
y poner un método de transferencia de datos
Código Java:
Ver originalprivate void transfer(Entry newTable[]){
for (Entry<K, V> entry : table) {
if (entry != null) {
Entry<K,V> current = entry;
while(current != null){
Entry<K,V> et = current;
current = current.next;
int index = hash(et.key,newTable.length);
et.next = newTable[index];
newTable[index] = et;
}
}
}
}
Con eso ahora puedo ordenar por inserción, pero CalgaryCorpus te quería preguntar lo siguiente, en la parte que dices:
Cita: Haz un metodo que te permita espiar tus estructuras y espialas por cada insercion que hagas, luego revisa el metodo que usas para imprimir los datos.
No se me ocurre otra forma de espiar que mostrar los mensajes con System.out.println.
Pongo el código:
https://goo.gl/Ar3vMN
Espero sus respuestas y saludos.