基于跳表指针(skip points)的倒排记录表(postings lists)合并算法
来源:互联网 发布:dota 数据 编辑:程序博客网 时间:2024/06/02 16:26
跳表算法为:
public class skip {
public static void main(String args[]){//////////初始化两个数组a,b,相当于两个倒排表
int a[]={2,4,8,16,19,23,28,43};
int b[]={1,2,3,5,8,41,51,60,71};
int c[]=new int [20];//数组用于存放相同的位置
int alen=a.length;
int blen=b.length;
int i=0,j=0,k=0,sk=4;//一次性跳四个
while(i<alen && j<blen)//当取两个数组内的数字时
{
if(a[i]==b[j])//如果位置相等
{
c[k]=a[i];//存放到c数组中
k++;//计数器
i++;j++;//下标后移
}
else if(a[i]<b[j])//如果a位置小于b位置
{
if((i+sk)<alen && a[i+sk]<=b[j])//如果跳了sk个a位置仍然小于b位置
i=i+sk;//a跳sk个数字
else
i++;
}
else//如果a位置大于b位置
{
if((j+sk)<blen && a[i]>=b[j+sk])//如果跳了sk个b位置仍然小于a位置
j=j+sk;//b跳sk个数字
else
j++;
}
}
for(i=0;i<k;i++)
System.out.print(c[i]+" ");
}
}
运行结果:
0 0
- 基于跳表指针(skip points)的倒排记录表(postings lists)合并算法
- 跳转表 skip lists
- 跳转表(skip lists)
- 信息检索导论学习笔记(二) 词项词典和倒排记录表
- 邻近搜索(proximity search)中的两个倒排记录表
- 信息检索导论(第二章) 词项词典及倒排记录表
- 经典算法十一Hash表算法(续)、倒排索引关键词不重复Hash编码
- 经典算法十一Hash表算法(续)、倒排索引关键词不重复Hash编码
- 第五章 Hash表算法(续)、倒排索引关键词不重复Hash编码
- 信息检索笔记-词项及倒排记录表
- 现代信息检索3---词汇表和倒排记录表
- 词项词典及倒排记录表
- 第二章 词项词典及倒排记录表
- 信息检索导论学习笔记(2)——词项词典及倒排记录表
- 倒排索引构建算法SPIMI(已实现,修订版)
- Data Structures (Weiss) Chapter 12: Deterministic Skip Lists (跳跃链表)
- 倒排索引算法的Java实现
- 倒排文件(二):多特征倒排文件
- Java.math.BigDecimal.subtract()方法实例
- 在模板定义语法中关键字class与typename的作用完全一样。
- 变频器控制器设计
- 使用游标批量获取数据提高查询性能
- Server Tomcat v7.0 Server at localhost failed to start.的问题解决
- 基于跳表指针(skip points)的倒排记录表(postings lists)合并算法
- hdu-2187 Beauty Contest(旋转卡壳求平面最远点对)
- 数组搜索(search)之线性搜索与二分法搜索
- 各种工业以太网比较(EtherCAT,EtherNet/IP,ProfiNet,Modbus-TCP,Powerlink)
- 验证手机号是否正确
- ListView以及常用Adapter使用总结
- HTML5笔记
- JNI开发心得笔记系列(一)
- 上机题-字符个数统计