package com.kai.util;
import java.util.HashSet;
/**
* Created by Administrator on 2017/8/4.
*/
public class TrieTree {
Node root=new Node();
private class Node{
private Node[] child=new Node[26];
private int count;
private HashSet<String> set=new HashSet<String>();
}
public void addTrieNode(String s){
Node current=root;
for(int index=0;index<s.length();index++){
char c=s.charAt(index);
if(current.child[c-'a']==null){
Node node =new Node();
current.child[c-'a']=node;
}
current=current.child[c-'a'];
if(index==s.length()-1){
current.count ++;
}
// current.set.add(s);
}
}
public int findTrie(String s){
Node current=root;
for(int index=0;index<s.length();index++){
char c=s.charAt(index);
if(current.child[c-'a']==null){
return 0;
}
current=current.child[c-'a'];
}
return current.count;
}
public static void main(String[] args) {
TrieTree tree =new TrieTree();
tree.addTrieNode("hello");
tree.addTrieNode("hello");
tree.addTrieNode("hell");
tree.addTrieNode("world");
tree.addTrieNode("hiiih");
System.out.println(tree.findTrie("hello"));
}
}
Trie树解决字典中查找单词问题
最新推荐文章于 2022-09-16 17:42:54 发布