信息检索_倒排记录表合并算法实现(python)

小程序描述:输入两个倒排记录表,求两个倒排记录表的交集。


倒排记录表合并算法伪代码如下所示:

信息检索_倒排记录表合并算法实现(python)_第1张图片

 

功能描述:

 ①运行程序,看到提示“请输入词项word1:”,输入某个倒排记录表的词项。

②运行程序,看到提示“请输入word1的倒排记录表(输入-1,停止输入倒排记录表):”时,输入①步骤词项的倒排记录表,当输入-1时停止输入此倒排记录表。

③运行程序,看到提示“请输入词项word2:”,输入某个倒排记录表的词项。

④运行程序,看到提示“请输入word2的倒排记录表(输入-1,停止输入倒排记录表):”时,输入③步骤词项的倒排记录表,当输入-1时停止输入此倒排记录表。

小程序功能架构图如下所示:

                                                    

'''程序说明:
            求两个倒排记录表的交集
            输入词项的倒排记录表时,当输入-1,停止输入其倒排记录表
'''

#data字典存储所有数据
data = {}

#分别输入两个词项以及其对应的倒排记录表


#输入词项word1以及它的倒排记录表
word1 = str(input("请输入词项word1:"))
id_1 = []
while 1:
    a1 = int(input('请输入word1的倒排记录表(输入-1,停止输入倒排记录表):'))
    if(a1 != -1):
        id_1.append(a1)
    else:
        break
    
    
data[word1] = id_1


#输入词项word2以及它的倒排记录表
word2 = str(input('请输入词项word2:'))
id_2 = []
while 1:
    a2 = int(input("请输入word2的倒排记录表(输入-1,停止输入倒排记录表):"))
    if(a2 != -1):
        id_2.append(a2)
    else:
        break

data[word2] = id_2

print('词项a1为:',word1)
print('词项a2为:',word2)
print('词项a1的倒排记录表为:',data[word1])
print('词项a2的倒排记录表为:',data[word2])


#求两个词项的并集
same_id = []
for i in data[word1]:
    if(i in data[word2]):
        same_id.append(i)
    else:
        continue
    
print("相同的倒排记录表为:",same_id)

 

你可能感兴趣的:(信息检索)