大家近来讨论一下这个问题,给个最优的方法
现在我要实现一个全文检索的功能,即有300个.dat文件,我需要从这300个文件中检索出用户输入的关键字,凡是有这个关键字的.dat文件,我都会记下来。现在我是循环查找.dat文件,然后Memo控件load该文件,从memo中进行查询,但是这样的话效率比较低,请问各位大虾,有没有个优化的方法?请指教 问题点数:100、回复次数:8Top
1 楼newfang(传说中的MIC)回复于 2005-11-26 09:07:31 得分 30
帮顶!没有好的办法,加个线程TRYTRYTop
2 楼chenylin(陈SIR)回复于 2005-11-26 10:44:13 得分 20
不要用MEMO,用文件流方式.
开多个线程,已经查过的文件记录下来,防止重复.Top
3 楼Little2000(rainy)回复于 2005-11-26 12:35:26 得分 0
多谢楼上二位指点,我试试看,说实在的,我以前没用过文件流,这次正好是个学习的机会Top
4 楼linzhengqun(风。我回来了)回复于 2005-11-26 13:13:01 得分 20
你可以用Hash算法,速度会快很多。找一个这样的容器类。
比如Delphi Container
我们Blog上有这个库介绍:http://blog.csdn.net/linzhengqunTop
5 楼Tensionli()回复于 2005-11-26 16:49:19 得分 8
多线程不错Top
6 楼Little2000(rainy)回复于 2005-11-29 08:27:25 得分 0
看来我该多学习了,多线程确实不错,但经理不让用多线程,没办法了,只能学习新东东,大家畅所欲言吧Top
7 楼kyee(浪子阿鹏)回复于 2005-11-29 08:36:43 得分 16
查找目标先 KMP 编码, 然后共用一个缓冲区, 不断查找即可.
Top
8 楼hellolongbin(一个人(自从扩充话题改版,再也不去灌水乐园了))回复于 2005-11-29 09:09:01 得分 6
但经理不让用多线程
-------------------
你问问你们经理让用什么先Top




