雜湊表(Hash Table)是一個將資料鍵值透過雜湊函數(Hash Function)轉換為資料儲存位置(通常是陣列索引的號碼)。而且可以快速進行資料插入、搜尋以及刪除的資料結構。不過有時候兩個不同的資料經過雜湊函數會產生同樣的數值,這稱為發生碰撞(collision),碰撞的其中一個解決方法就是用Linked-List把兩個資料串起來。現在給一個雜湊函數: f(key) = key%1001,請你建出一個陣列大小是1001的雜湊表,模擬接下來的動作
一開始雜湊表都是空的,接下來會有多種指令
●Insert n:請將數字n插入雜湊表,產生碰撞時請讓比較晚加入的插在前面。
●Look k:請按照順序印出雜湊表第k個table的所有數字(數字間請留一個空白,最後一個數字後請換行),如果沒數字請輸出Null。
●Delete n:如果n有在雜湊表裡,請刪除n(如果有多個n請先刪除晚進來的);若沒有,請印出Error。
●Search n:如果n有在雜湊表裡,請輸出Yes;反之輸出No。
●End:結束輸入
n為int範圍內非負整數,0<=k<1001
對於Look, Delete, Search指令請按照規則輸出