Tri树(字典树JAVA版)联想输入法所用的数据结构
又到了快复试的时候了。遥想去年此时,心情忐忑不安,复试机试差点挂掉。当时考的是,联想输入法,想想都恐怖。这段时间写算法,顺便把那个给写了。也算最后纪念一下我的考研。我爱新学校,我也爱我的同学和老师,我很珍惜这次进入研究生院的机会。也希望那些此时和我当时一样忐忑不安的考生可以实现梦想!!
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;
public class TriTree {
public static void insert(TriNode root, String str) {
boolean end, find;
TriNode node = null;
for (int i = 0; i < str.length(); i++) {
end = false;
find = false;
List<TriNode> triLink = root.triLink;
if (i == (str.length() - 1))
end = true;
char ch = str.charAt(i);
Iterator<TriNode> iterator = triLink.iterator();
while (iterator.hasNext()) {
node = iterator.next();
if (node.ch == ch) {
find = true;
break;
}
}
if (find)
root = node;
else {
TriNode tri_node = new TriNode(ch);
triLink.add(tri_node);
root = tri_node;
}
if (end)
root.count++;
}
}
public static TriNode creat_TriTree(String fileName) {
File file = new File(fileName);
TriNode root = new TriNode();
try {
BufferedReader bf = new BufferedReader(new FileReader(file));
try {
String str = bf.
相关文档:
1、作用域public,private,protected,以及不写时的区别
作用域 当前类 同一package 子孙类 其他package
public √ √ √ √
protected √ √ √ ×
不写时默认为friendly √ √ × ×
private √ × × ×
2、ArrayList和Vect ......
文章一
文章二
文章三
原文
J2ME开发优化
1、猜测Vector的长度
2、使用局部变量
3、避免字符串比较
4、将变量和方法声明为final和static,以加快访问
5、使用惰性实例化
6、处理outofmemoryError错误
7、使用数组而不是对象
8、倒计至零的迭代循环,因为和零比较将会较快
9、把引用设置为NULL
10、最大限度的 ......
作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从。根据我的经验,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Java程序员们。
一、Java编程入门类
对于没有Java编程经验的程序员要入门,随便读 ......
Java性能优化技巧集锦
一、通用篇
1.1 不用new关键词创建类的实例
1.2 使用非阻塞I/O
1.3 慎用异常
1.4 不要重复初始化变量
1.5 尽量指定类的final修饰符
1.6 尽量使用局部变量
1.7
乘法和除法
二、J2EE篇
2.1 使用缓冲标记
2.2 始终通过会话Bean访问实体Bea ......
JDK环境变量配置的步骤如下:
1.我的电脑-->属性-->高级-->环境变量.
2.配置用户变量:
a.新建 JAVA_HOME
C:\Program Files\Java\j2sdk1.5.0 (JDK的安装路径)
b.新建 PATH
%JAVA_HOME%\bin;%JAV ......