[Java] 706.ハッシュマップを設計する---固定長配列を使用してMyHashMapを表します!!!

組み込みのハッシュテーブルライブラリを使用せずにハッシュマップ(HashMap)を設計します。

MyHashMapクラスを実装します。

MyHashMap()は、空のマップでオブジェクトを初期化します。voidput(
int key、int value)キーと値のペア(key、value)をHashMapに挿入します。キーがマップにすでに存在する場合は、対応する値の値を更新します。
int get(int key)特定のキーによってマップされた値を返します。マッピングにキーマッピングが含まれていない場合は、-1を返します。
void remove(key)マッピングにキーマッピングがある場合は、キーとそれに対応する値を削除します。

例:

輸出入:
[“ MyHashMap”、“ put”、“ put”、“ get”、“ get”、“ put”、“ get”、“ remove”、“ get”]
[[]、[1、1]、[ 2、2]、[1]、[3]、[
2、1 ]、[2]、[2]、[2]]再出:
[null、null、null、1、-1、null、1、null 、-1]

説明:
MyHashMap myHashMap = new MyHashMap();
myHashMap.put(1、1); // myHashMapは[[1,1]]になりました
myHashMap.put(2、2); // myHashMapは[[1,1]になりました]、[2,2]]
myHashMap.get(1); // 1を返しますmyHashMapは[[1,1]、[2,2]]になりました
myHashMap.get(3); // -1を返します(見つかった)、myHashMapは[[1,1]、[2,2]]になりました
myHashMap.put(2、1); // myHashMapは[[1,1]、[2,1]]になりました(更新された値)
myHashMap.get(2); // 1を返し、myHashMapは[[1,1]、[2,1]]になりました
myHashMap.remove(2); //キー2のデータを削除しますmyHashMapは[[1 、1]]
myHashMap.get(2); // -1(見つかりません)を返し、myHashMapは[[1,1]]になりました

促す:

0 <=キー、値<= 106
呼び出しput、get、およびremoveメソッドを最大104回

代码:
    private int[]a=null;
	public MyHashMap() {
    
    
        a=new int[1000001];
        Arrays.fill(a,-1);
    }
    public void put(int key, int value) {
    
    
       a[key]=value;
    }
    public int get(int key) {
    
    
		return a[key];

    }
    public void remove(int key) {
    
    
        a[key]=-1;
    }

おすすめ

転載: blog.csdn.net/qq_44461217/article/details/114776909