一个文本搜索引擎的实现
文本搜索引擎,c++实现,南大数据结构期末大作业
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 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个文件信息
#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.tlogli
文件 3606 2016-01-10 04:12 SearchEngineSearchEngineDebugSearchEngine.tlogli
文件 1090 2016-01-10 04:12 SearchEngineSearchEngineDebugSearchEngine.tlogli
文件 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 SearchEngineSearchEngineli
文件 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个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)