clear all close all M=[0 1 1 0 1 1;1 0 0 0 0 1;1 0 0 0 1 1;0 0 0 0 1 1;1 0 1 1 0 1]; N=50000; v(1)=unifSample([1:length(M)],[M(1,:)./sum(M(1,:))]); for k=1:N if v(k)==6 %Restart v(k)=1; v(k+1)=unifSample(1:length(M),M(1,:)./sum(M(1,:))); else v(k+1)=unifSample(1:length(M),M(v(k),:)./sum(M(v(k),:))); end end for m=1:(length(M)-1) vRank(m)=length(v(v==m))/N; end vRank % plot(1:N,v(1:N),'.b') % axis([0 N 0 6])