导航电子地图数据中POI搜索技术原理之三 字符自动提示
百度地图中,进行POI检索的时候,如果输入“北京”的字样,输入栏中自动提示以“北京”开头的POI字符串。如下图所示:
如果POI数据,采用《导航电子地图数据中POI搜索技术原理之二》的方式组织,是无法实现此项功能的。如果想支持此项功能,该如何进行POI数据组织呢?
假设现存在以下POI数据:
ID | 名称 |
1 | 北京大学 |
2 | 北京科技大学 |
3 | 北方交通大学 |
4 | 南方大学 |
5 | 南方科技大学 |
通过对现有的POI数据,进行预处理,可以得到以下一个索引树:
当用户输入“北京”的时候,APP通过检索索引树,可以再输入框中,自动提示接下来待选择的:“北京大学”“北京科技大学”。
但这种索引方式,相对于《导航电子地图数据中POI搜索技术原理之二》的设计,有一个弊端:当用户输入“北大”的时候,检索索引树,是无法高效快速的检索到包含“*北*大*”的字符串的。
作者简介