关于在XML中快速查找大量数据的算法

lgxysl 2009-05-20 05:22:49
设有如下格式的数据(数据量比较大,有数十万条):

……
……
……
<work>
<![CDATA[vi.(使)工作 vt.[(使)工作 n.工作,劳动,作业]]>
<![CDATA[wə:k]]>
</work>

……
……
……

<task>
<![CDATA[工作,任务,差事]]>
<![CDATA[tɑ:sk]]>
</task>

……
……
……


1、现在要按中文查找英文,例如输入“工作”,将查找到work及task这两个单词。
2、要模糊查找单词,例如键入as,task将被找到;键入rk,work将被找到。

如果数据量少的话,上述的查找都不成问题,但是,在数据量大的情况下(数十万条),算法就很成问题了。大家对此有什么好的算法?

...全文
120 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
绿色夹克衫 2009-05-21
  • 打赏
  • 举报
回复
看LZ给出的XML格式,似乎支持模糊查询很难呀!
另外这样大的数据量,最好用数据库,别用xml了。
要不就自己设计一个数据结构,配合排序及hash,对于精确搜索,应该能够提高效率,但对于模糊查询,恐怕会有比较大的问题。
zhangwuji155 2009-05-21
  • 打赏
  • 举报
回复
建议使用MarkUp
蒋晟 2009-05-21
  • 打赏
  • 举报
回复
建一个索引吧
导入数据库的话,可以在表的字段上建索引
lgxysl 2009-05-21
  • 打赏
  • 举报
回复
看LZ给出的XML格式,似乎支持模糊查询很难呀!
另外这样大的数据量,最好用数据库,别用xml了。
要不就自己设计一个数据结构,配合排序及hash,对于精确搜索,应该能够提高效率,但对于模糊查询,恐怕会有比较大的问题。
-----------------------------------------
在手机上应用,不支持数据库.我想也是没有办法支持模糊查找的了.最好也只有将它按字母排序列解为多个XML文档(例如按首字母列解为26个XML文档),然后用"哈希"算法了.

谢谢楼上的.
梦无痕123 2009-05-20
  • 打赏
  • 举报
回复
基于sax解析比tinyxml好些
梦无痕123 2009-05-20
  • 打赏
  • 举报
回复
tynixml 解析怎么样

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧