• 大小: 997B
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-01
  • 语言: Matlab
  • 标签: matlab  pagerank  

资源简介

用matlab编程实现的pagerank算法 与你们分享

资源截图

代码片段和文件信息

G=[0 1 0 0 1 0 0 0 0 0 0 0 0 0;
   1 0 1 0 1 0 0 0 0 0 0 0 0 0;
   0 1 0 1 0 0 0 0 0 0 0 0 0 0; 
   0 0 1 0 1 0 1 0 0 0 0 0 0 0;
   1 1 0 1 0 1 0 0 0 0 0 0 0 0;
   0 0 0 0 1 0 0 0 0 0 1 1 0 0;
   0 0 0 1 0 0 0 1 1 0 0 0 0 0;
   0 0 0 0 0 0 1 0 0 0 0 0 0 0;
   0 0 0 0 0 0 1 0 0 1 0 0 0 0;
   0 0 0 0 0 0 0 0 1 0 1 0 0 1;
   0 0 0 0 0 1 0 0 0 1 0 0 0 0;
   0 0 0 0 0 1 0 0 0 0 0 0 1 0;
   0 0 0 0 0 0 0 0 0 0 0 1 0 1;
   0 0 0 0 0 0 0 0 0 1 0 0 1 0];
[nn]=size(G);
p=0.85;
delta=(1-p)/n;
sn=sum(G1);     % 按列求矩阵 G 各列的列和
D=diag(1./sn);
A=p*G*D + delta;
% 幂迭代法
x=ones(n1)/n; % 迭代初始向量
z=zeros(n1);
cnt=0;  % 用于记录迭步数
while max(abs(x-z)) > 0.0001 
   z = x;
   x = A*x;
   cnt=cnt+1;
end
[x1index]=sort(x);
x1=flipud(x1);
index=flipud(index);
% 输出结果
out=[1:n; x1‘; ind

评论

共有 条评论