LeetCode 676 实现一个魔法字典[枚举] HERODING的LeetCode之路

Posted HERODING23

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 676 实现一个魔法字典[枚举] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。

解题思路:
将单词列表记录下来,在search阶段,枚举每个单词进行比较,如果有长度相同且不同的字母只有1,返回true,否则返回false
,代码如下:

class MagicDictionary 
private:
    vector<string> words;
public:
    MagicDictionary() 

    
    
    void buildDict(vector<string> dictionary) 
        words = dictionary;
    
    
    bool search(string searchWord) 
        for(auto& word : words) 
            if(word.size() != searchWord.size()) 
                continue;
            
            int diff = 0;
            for(int i = 0; i < word.size(); i ++) 
                if(searchWord[i] != word[i]) 
                    diff ++;
                
                if(diff > 1) 
                    break;
                
            
            if(diff == 1) 
                return true;
            
        
        return false;
    
;

/**
 * Your MagicDictionary object will be instantiated and called as such:
 * MagicDictionary* obj = new MagicDictionary();
 * obj->buildDict(dictionary);
 * bool param_2 = obj->search(searchWord);
 */

以上是关于LeetCode 676 实现一个魔法字典[枚举] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章

每日一题676. 实现一个魔法字典

LeetCode 0676.实现一个魔法字典 - 易实现但效率不是那么高的方法

「 每日一练,快乐水题 」676. 实现一个魔法字典

「 每日一练,快乐水题 」676. 实现一个魔法字典

[LeetCode] 676. Implement Magic Dictionary 实现神奇字典

leetcode之676 实现一个LRU