676 實現乙個魔法字典

2021-10-12 07:56:13 字數 1885 閱讀 5005

題目描述:

設計乙個使用單詞列表進行初始化的資料結構,單詞列表中的單詞 互不相同 。 如果給出乙個單詞,請判定能否只將這個單詞中乙個字母換成另乙個字母,使得所形成的新單詞存在於你構建的字典中。

實現 magicdictionary 類:

magicdictionary() 初始化物件

void builddict(string dictionary) 使用字串陣列 dictionary 設定該資料結構,dictionary 中的字串互不相同

bool search(string searchword) 給定乙個字串 searchword ,判定能否只將字串中 乙個 字母換成另乙個字母,使得所形成的新字串能夠與字典中的任一字串匹配。如果可以,返回 true ;否則,返回 false 。

示例:

輸入[「magicdictionary」, 「builddict」, 「search」, 「search」, 「search」, 「search」]

[, [[「hello」, 「leetcode」]], [「hello」], [「hhllo」], [「hell」], [「leetcoded」]]

輸出[null, null, false, true, false, false]

解釋magicdictionary magicdictionary = new magicdictionary();

magicdictionary.builddict([「hello」, 「leetcode」]);

magicdictionary.search(「hello」); // 返回 false

magicdictionary.search(「hhllo」); // 將第二個 『h』 替換為 『e』 可以匹配 「hello」 ,所以返回 true

magicdictionary.search(「hell」); // 返回 false

magicdictionary.search(「leetcoded」); // 返回 false

1 <= dictionary.length <= 100

1 <= dictionary[i].length <= 100

dictionary[i] 僅由小寫英文本母組成

dictionary 中的所有字串 互不相同

1 <= searchword.length <= 100

searchword 僅由小寫英文本母組成

builddict 僅在 search 之前呼叫一次

最多呼叫 100 次 search

方法1:

(1)使用unordered_map將插入的字串按照字串的長度進行分組儲存;

(2)對於查詢的字串,找出對應長度下的所有的字串,然後判斷是否存在只相差乙個字元的字串;

class

magicdictionary

void

builddict

(vector dictionary)

}bool

search

(string searchword)

}++pos;}if

(counts==1)

}return res;}}

;/**

* your magicdictionary object will be instantiated and called as such:

* magicdictionary* obj = new magicdictionary();

* obj->builddict(dictionary);

* bool param_2 = obj->search(searchword);

*/

676 實現乙個魔法字典

實現乙個帶有builddict,以及search方法的魔法字典。對於builddict方法,你將被給定一串不重複的單詞來構建乙個字典。對於search方法,你將被給定乙個單詞,並且判定能否只將這個單詞中乙個字母換成另乙個字母,使得所形成的新單詞存在於你構建的字典中。示例 1 input buildd...

leetcode676實現乙個魔法字典

就是乙個花裡胡哨的菜逼題目 實現乙個帶有builddict,以及 search方法的魔法字典。對於builddict方法,你將被給定一串不重複的單詞來構建乙個字典。對於search方法,你將被給定乙個單詞,並且判定能否只將這個單詞中乙個字母換成另乙個字母,使得所形成的新單詞存在於你構建的字典中。示例...

181 實現乙個魔法字典

題目描述 實現乙個帶有builddict,以及 search方法的魔法字典。對於builddict方法,你將被給定一串不重複的單詞來構建乙個字典。對於search方法,你將被給定乙個單詞,並且判定能否只將這個單詞中乙個字母換成另乙個字母,使得所形成的新單詞存在於你構建的字典中。示例 1 input ...