import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;
import edu.uci.ics.jung.algorithms.scoring.PageRank;
import java.util.Set;
import java.util.TreeSet;
import edu.uci.ics.jung.graph.DirectedGraph;
import edu.uci.ics.jung.graph.DirectedSparseGraph;
public class PageRankCalc {
DirectedGraph<Integer, String> g =
new DirectedSparseGraph<Integer, String>();
private void readFile(String filename, String delim) throws IOException {
FileReader fr = new FileReader(filename);
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
String[] result = line.split(delim);
g.addEdge(result[0] + " " + result[1],
Integer.parseInt(result[0]),
Integer.parseInt(result[1]));
}
br.close();
}
public static void main(String args[]) throws IOException {
PageRankCalc prc = new PageRankCalc();
if (args.length != 2) {
System.err.println("Usage: java PageRankCalc <delimiter> <input_file>");
System.exit(1);
}
prc.readFile(args[1], args[0]);
PageRank<Integer, String> pr =
new PageRank<Integer, String>(prc.g, 0.15);
pr.evaluate();
double sum = 0;
Set<Integer> sortedVerticesSet =
new TreeSet<Integer>(prc.g.getVertices());
for (Integer v : sortedVerticesSet) {
double score = pr.getVertexScore(v);
sum += score;
System.out.println(v + " = " + score);
}
System.out.println("s = " + sum);
}
}
基于Java实现的pagerank算法.zip
需积分: 1 180 浏览量
2024-05-24
06:14:42
上传
评论
收藏 1KB ZIP 举报
__AtYou__
- 粉丝: 1886
- 资源: 645
最新资源
- SM4-CFB代码实现及基本补位示例代码
- 基于asp的搜索引擎开发(源代码)
- Java课设相关材料.zip
- JSP搜索引擎的研究与实现(源代码)
- delphi 12 控件之delphipi.0.85.setup.exe
- 数据库管理工具:dbeaver-ce-23.0.2-amd64.deb
- 搜索链接淘特搜索引擎共享版-tot-search-engine
- 数据库管理工具:dbeaver-ce-24.0.3-macos-x86-64.dmg
- 数据库管理工具:dbeaver-ce-24.0.1-x86-64-setup.exe
- GoogleCloud2024年数据和AI趋势报告+生成式AI+数据治理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈