zoukankan      html  css  js  c++  java
  • 211. Add and Search Word

    class WordDictionary {
    
        private WordDictionary[] children=new WordDictionary[26];
        
        boolean isWord=false;
        
        /** Initialize your data structure here. */
        public WordDictionary() {
            
        }
        
        /** Adds a word into the data structure. */
        public void addWord(String word) {
            if(word.length()==0)
            {
                isWord=true;
                return;
            }
            int idx=word.charAt(0)-'a';
            if(children[idx]==null)
                children[idx]=new WordDictionary();
            children[idx].addWord(word.substring(1));
        }
        
        /** Returns if the word is in the data structure. A word could contain the dot character '.' to represent any one letter. */
        public boolean search(String word) {
            if(word.length()==0)
                return isWord;
            if(word.charAt(0)=='.')
            {
                for(int i=0;i<26;i++)
                    if(children[i]!=null&&children[i].search(word.substring(1))==true)
                        return true;
                return false;
            }
            else
            {
                int idx=word.charAt(0)-'a';
                if(children[idx]!=null)
                    return children[idx].search(word.substring(1));
                return false;
            }
        }
    }
    

      

  • 相关阅读:
    JavaScript作用域
    JavaScript数据类型
    CSS页面布局(二)
    CSS页面布局(一)
    CCS界面组件
    JavaScript面向对象设计
    python-序列化与反序列化
    python-常用模块
    python-re模块
    python-匿名函数
  • 原文地址:https://www.cnblogs.com/asuran/p/7797174.html
Copyright © 2011-2022 走看看