/**
 * AlgoDat SoSe2000, Aufgabe 62
 * Hashtable mit Verkettung der Ueberlaeufer
 *
 * @author Christian Semrau
 * <a href="mailto:gsemrau@cs.uni-magdeburg.de">gsemrau@cs.uni-magdeburg.de</a>
 */

// hier beginnt Teil a

import java.util.LinkedList;
class Hashtabelle{

    LinkedList[] zeiger;

    private String alphabet = "abcdefghijklmnopqrstuvwxyzäöüß";
    // Wenn die Umlaute nicht richtig dargestellt werden, dann
    // tuts mir leid, ich verwende selbst keine Umlaute mehr in meinen
    // Programmen, aber wenn die Uebungsleiter darauf bestehen...


    // Legt die Tabelle mit einer festen Groesse von 11 an
    public Hashtabelle(){
        zeiger = new LinkedList[11];
        for (int i=0; i<11; i++)
            zeiger[i] = new LinkedList();
    }

    public static void main(String[] args){
        Hashtabelle ht = new Hashtabelle();
        ht.insert("Saake");   // Sollte ich etwa die Strings
        ht.insert("Timm");    // manuell in die richtigen Listen
        ht.insert("Sattler"); // einfuegen?

// hier endet Teil a
// hier beginnt Teil b

        ht.insert("Dassow");
        ht.insert("Engelke");
        ht.insert("Jesse");
        ht.insert("Blümel");
        ht.insert("Plack");
    }

    public void insert(String obj){
        int hash = alphabet.indexOf(obj.charAt(2))+1;
        // prueft nicht, ob tatsaechlich ein drittes Zeichen
        // existiert oder ob es im alphabet enthalten ist!
        hash = hash % 11;
        zeiger[hash].addFirst(obj);
    }

} // Hashtabelle
