package hjelpeklasser;
import java.util.*;
public class KvadratiskHashTabell<T> implements Beholder<T>
{
private static final int[] PRIM = {1,3,7,11,19,31,59,107,211,419,827,1627,3251,
6491,12979,25951,51899,103787,207563,415111,830191,1660367,3320699,6641387,6641387,
13282747,26565491,53130971,106261931,212523859,425047703,850095391,1700190707};
private static final class HashObjekt<T>
{
private final T verdi;
private final int hashverdi;
private HashObjekt(T verdi, int hashverdi)
{
this.verdi = verdi;
this.hashverdi = hashverdi;
}
}
private final HashObjekt<T> x
= new HashObjekt<>(null, 0);
private boolean ledig(int indeks)
{
HashObjekt<T> o = hash[indeks];
return o == null || o == x;
}
private HashObjekt<T>[] hash;
private final float tetthet;
private int grense;
private int antall;
private int iprim;
private void utvid()
{
throw new UnsupportedOperationException("Ikke laget ennå!");
}
public KvadratiskHashTabell(int dim)
{
}
public KvadratiskHashTabell()
{
this(11);
}
@Override
public int antall()
{
return antall;
}
@Override
public boolean tom()
{
return antall == 0;
}
@Override
public boolean leggInn(T verdi)
{
throw new UnsupportedOperationException("Ikke laget ennå!");
}
@Override
public String toString()
{
throw new UnsupportedOperationException("Ikke laget ennå!");
}
@Override
public boolean inneholder(T verdi)
{
throw new UnsupportedOperationException("Ikke laget ennå!");
}
@Override
public boolean fjern(T verdi)
{
throw new UnsupportedOperationException("Ikke laget ennå!");
}
@Override
public void nullstill()
{
throw new UnsupportedOperationException("Ikke laget ennå!");
}
@Override
public Iterator<T> iterator()
{
throw new UnsupportedOperationException("Ikke laget ennå!");
}
}