一个文本搜索引擎的实现


文本搜索引擎,c++实现,南大数据结构期末大作业
资源截图
代码片段和文件信息
#include “SearchEngine.h“
#include “iostream“

using namespace std;

//extern linkTable *lkhead;
double *matrix_mul(SMatrix *sm double *pr);
bool matrix_equal(double * double *);

static int sm_sum = 0;
double average = 1.0 / FILE_SUM;

SMatrix *create_sm(linkNodeTable *node) {
if (node == NULL)
return NULL;
int count = 0;
linkTable *pnode = node;
while (pnode) {
sm_sum += pnode->indegree;
pnode = pnode->next;
}
SMatrix *sm = new SMatrix[sm_sum];
int outdegree[FILE_SUM];
for (int i = 0; i < FILE_SUM; ++i)
outdegree[i] = 0;
while (node) {
for (int i = 0; i < node->indegree; ++i) {
sm[count].row = node->index;
sm[count].col = node->link_text[i];
outdegree[sm[count].col]++;
count++;
}
node = node->next;
}
for (int i = 0; i < sm_sum; ++i)
sm[i].value = 1 / outdegree[sm[i].col];
return sm;
}

double *page_rank(linkTable *lkh) {
SMatrix *smatrix = create_sm(lkh);
double *PRresult = new double[FILE_SUM];
for (int i = 0; i < FILE_SUM; ++i)
PRresult[i] = average;
double *newPRresult = matrix_mul(smatrix PRresult);
while (!matrix_equal(PRresult newPRresult)) {
double *tmp = newPRresult;
newPRresult = NULL;
delete tmp;
newPRresult = matrix_mul(smatrix PRresult);
}
delete newPRresult;
return PRresult;
}

double *matrix_mul(SMatrix *sm double *pr) {
double *result = new double[FILE_SUM];
for (int i = 0; i < FILE_SUM; ++i)
result[i] = 0;
for (int i = 0; i < sm_sum; ++i)
result[sm[i].row] = result[sm[i].row] + 0.85 * sm[i].value * pr[sm[i].col] + 0.15 * average;
return result;
}

bool matrix_equal(double *mdest double *msrc) {
bool equal = true;
for (int i = 0; i < FILE_SUM; ++i)
if (mdest[i] != msrc[i]) {
equal = false;
mdest[i] = msrc[i];
}
return equal;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     116224  2016-01-10 04:12  SearchEngineDebugSearchEngine.exe

     文件     887024  2016-01-10 04:12  SearchEngineDebugSearchEngine.ilk

     文件    1249280  2016-01-10 04:12  SearchEngineDebugSearchEngine.pdb

     文件     112316  2016-01-10 04:01  SearchEngineSearchEngineDebugPageRank.obj

     文件     244515  2016-01-10 04:08  SearchEngineSearchEngineDebugReadDoc.obj

     文件     147224  2016-01-10 04:12  SearchEngineSearchEngineDebugRunSearch.obj

     文件       1619  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.log

     文件     106508  2016-01-10 04:01  SearchEngineSearchEngineDebugSearchEngine.obj

     文件       3974  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.tlogcl.command.1.tlog

     文件      22132  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.tlogCL.read.1.tlog

     文件       4572  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.tlogCL.write.1.tlog

     文件       1986  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.tloglink.command.1.tlog

     文件       3606  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.tloglink.read.1.tlog

     文件       1090  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.tloglink.write.1.tlog

     文件        185  2016-01-10 04:12  SearchEngineSearchEngineDebugSearchEngine.tlogSearchEngine.lastbuildstate

     文件     125037  2016-01-10 04:01  SearchEngineSearchEngineDebugSearchTreeFunc.obj

     文件     125159  2016-01-10 04:07  SearchEngineSearchEngineDebugSEMain.obj

     文件     379904  2016-01-10 04:12  SearchEngineSearchEngineDebugvc120.idb

     文件     413696  2016-01-10 04:12  SearchEngineSearchEngineDebugvc120.pdb

     文件   22408777  2015-12-14 15:44  SearchEngineSearchEnginedocuments.txt

     文件     409930  2015-12-14 15:47  SearchEngineSearchEnginelink.txt

     文件       1829  2016-01-10 03:50  SearchEngineSearchEnginePageRank.cpp

     文件       3247  2016-01-10 04:08  SearchEngineSearchEngineReadDoc.cpp

     文件       7346  2016-01-10 04:12  SearchEngineSearchEngineRunSearch.cpp

     文件        968  2016-01-10 03:31  SearchEngineSearchEngineSearchEngine.h

     文件       4309  2016-01-10 03:21  SearchEngineSearchEngineSearchEngine.vcxproj

     文件       1415  2016-01-10 03:21  SearchEngineSearchEngineSearchEngine.vcxproj.filters

     文件       1596  2016-01-09 14:45  SearchEngineSearchEngineSearchTreeFunc.cpp

     文件        911  2016-01-10 04:05  SearchEngineSearchEngineSEMain.cpp

     文件    8192000  2016-01-10 04:18  SearchEngineSearchEngine.sdf

............此处省略10个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)