Comment faire pour implémenter une table de hachage à l'aide d'un Arbre de Recherche Binaire?

J'ai été en mesure de mettre à la table de hachage à l'aide du tableau en utilisant simplement la structure de données suivante.

LinkedList<Item<K,V>> table[]
const int MAX_SIZE = 100

je.e un tableau de liste chaînée(hachage avec chaînage).

Maintenant dans divers livres,ils disent que nous pouvons mettre en œuvre une table de hachage avec un BST si nous voulons données ordonnées.
Comment puis-je intégrer à la fois la clé et la valeur dans un BST. Bien que je peux stocker à la fois juste comme je stocker un seul élément de données, mais la clé donne un entier qui agit comme un indice de la matrice après qu'il a été à une fonction de hachage. Comment puis-je utiliser la clé dans le BST? Je n'ai pas besoin d'un indice?

Ce que je peux penser, c'est que je peux comparer les deux touches à l'aide de la fonction et ensuite faire normale de l'insertion,la suppression en conséquence.

MODIFICATIONS:

Supposons que j'ai un TBS à partir de zéro

class Node {
        K key;
        V value;
        Node left;
        Node right;
    }


class BinarySearchTree {
            Node root;
        }


class Hashtable {

BinarySearchTree bst;

public void Hashtable() {
bst = new BinarySearchTree();
}

//hashfunction(K key)

//get(K Key)

//put(K key,V value)

//remove(K key)

}

Comment puis-je utiliser la clé mappé en entier pour mettre en œuvre les

insert(V value) 

dans BST.

Je suis assez nouveau à la programmation, mais ne pourriez-vous pas utiliser un arbre de carte à la place? stackoverflow.com/questions/13373854/...

OriginalL'auteur Hooli | 2013-06-24