我必須選擇一個數據結構,我需要下面我正在解釋的條件,完善的數據結構有以下值搜索用於存儲和檢索的元素
abc,def,rty,ytr,dft which all are map to row R1B1 (actully key is combination of R1+B1)
abEERc,dFFFef,rGGty which all are map to row R1B2 (actully key is combination of R1+B2)
KEY VALUE
abc,def,rty,ytr,dft ---> R1B1
abEERc,dFFFef,rGGty ---> R1B2
現在例如,假設我獲得ytr
,那麼我將能夠檢索R1B1
或者說,我得到值rGGty
然後我將能夠檢索R1B2
現在的情況是,問題是搜索,複雜性和所採取的事物有順序去
例如,它會先挑第一線搜索ytr
的時間,它會首先匹配它abc
這將不匹配,那麼將不得不匹配def
不會再匹配,那麼它將匹配rty
,不會也匹配,那麼它最終將匹配ytr
最後它會找到問題的關鍵R1B1
終於
同樣如果第二個字符串需要要搜索可以說rGGty
然後它會掃描第一行,其中將不會找到值,然後搜索將繼續第二行,也在第三個元素的第二行它將得到rGGty
作爲元素,然後它會檢索R1B2
作爲值
比方說,如果把這個東西在地圖中,然後順序搜索將繼續鍵,然後只有我們就能找到相應的值
鄉親請告知這將是最好的數據結構,我們就可以在java中我將不得不在搜索鍵的項目中找到相應的值,在非常快的時間內也不會碰到性能太高的數據結構,性能應該是v ERY高
請告知人們也將是巨大的,如果有人可以告訴我展示瞭如何可以做到這一點使用數字樹木
爲什麼不只是使用HashMap? –
將字符串映射爲值的散列表和用於存儲從值到字符串的「集合」的逆映射的散列表。 – saadtaame
@OliverCharlesworth感謝您的建議,但仍然無法掌握請求您請詳細解釋如果可能請詳細解釋一些代碼可以幫助理解更多 –