首页 > 其他 > 详细

Hiho 1014 题目

时间:2015-07-11 22:42:29      阅读:357      评论:0      收藏:0      [点我收藏+]

hiho一下第二周 Hihocoder #1014 : Trie树

?

参考链接:http://m.blog.csdn.net/blog/u012662688/38354777

?

Java实现:

?

import java.io.BufferedInputStream;

import java.util.Scanner;

?

?

public class Main {

????public static void main(String[] args) {????????

????????Scanner sc = new Scanner(new BufferedInputStream(System.in));

????????

????????//构建字典树

????????int n = sc.nextInt();????????

????????Trie root = new Trie();//构建一棵空树,不断的往里面放节点。

????????for(int i = 0;i<n;i++){

????????????insert(root, sc.next());

????????}

???????? ?

????????

????????//查找字典树

????????int m = sc.nextInt();????????

????????for(int i = 0;i<m;i++){????

????????????System.out.println(find(root, sc.next()));????

????????}

????}

?

????//创建字典树

????public static void insert(final Trie root, String str) {

????????Trie cur = root;

????????for (char ch : str.toCharArray()) {

????????????int idx = ch - ‘a‘;

????????????if (cur.child[idx] == null) {

????????????????cur.child[idx] = new Trie();

????????????}

????????????cur = cur.child[idx];????????????

????????????cur.num++;

????????}

????}

?

????//查找字典树

????public static int find(final Trie root, String str) {

????????Trie cur = root;

????????for (char ch : str.toCharArray()) {

????????????int idx = ch - ‘a‘;

????????????if (cur.child[idx] == null) {

????????????????return 0;

????????????}

????????????cur = cur.child[idx];

????????}

????????return cur.num;

????}

}

?

class Trie {

????Trie[] child;????

????int num;

????public Trie() {

????????child = new Trie[26];

????}

}

Hiho 1014 题目

原文:http://www.cnblogs.com/ustc-cui/p/4639373.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!