信息檢索_倒排記錄表合併算法實現(python)

小程序描述:輸入兩個倒排記錄表,求兩個倒排記錄表的交集。


倒排記錄表合併算法僞代碼如下所示:

 

功能描述:

 ①運行程序,看到提示“請輸入詞項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)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章