私は、衝突に対処するために線形プロービングを使用するハッシュマップを持っています。私はそれを横切りたい。概念的には、これは非常に簡単ですが、ジェネリックスを使用することで私の心が奪われています。ジェネリックスを使ったハッシュマップ線形回帰(Java)
ハッシュマップの内部配列内のエントリは、ジェネリック医薬品としてのそれらのキーと値のペアを持っている - この
public entry(K key, V value) {
this.key = key;
this.value = value;
}
ように、これらのエントリは、エントリ・アレイに記憶されている - この
private entry[] entries;
よう私は、特定のキーで始まるハッシュマップをトラバースしたいと思います。内部配列の終わりに到達し、次にキーまで配列の先頭に戻り、循環配列で配列全体をカバーします。
public V traverse(K k) {
//look from current key
for(int i = (int)k; i < entries.length; i++){
//visit node
}
//go back to start, and look up to key
for(int i = 0; i < (int)k; i++){
//visit node
}
}
私は整数でソートの愚かだったように、キーをキャスト、その型を実現してきましたが、私は実際にこのトラバースを行うための作業方法を見つけるのに苦労しています。
まあ、最初に見つけなければなりません。 'entries ='をループして、 '.key == k'で見つけてコードを使います。 – Bakuriu