마다 루프 반복을 MATLAB에 크기를 변경 나타납니다이 오류가 나는 음식물을 실행할 때, 어떻게변수 'CC'는 내가 matlab에와 tarjan 프로그램이 코드 소스가
function [C, S, idx, index, index_accessible] = strongconnect(C, G, v, S, idx, index, index_accessible)
index(v) = idx;
index_accessible(v) = idx;
idx = idx+1;
S = push(S,v); %ajouter le sommet courant à la pile
% Liste les sommets adjacents au sommet courant
n = voisin(G,v);
% Parcours récursif
for i = 1:length(n)
if(index(n(i)) == 0)
[C, S, idx, index, index_accessible] = strongconnect(C, G, n(i), S, idx, index, index_accessible);
index_accessible(v) = min(index_accessible(v), index_accessible(n(i)));
elseif (~isempty(find(S == n(i), 1)))
index_accessible(v) = min(index_accessible(v), index(n(i)));
end
end
% Le sommet est une racine, on calcule la composante fortement connexe associée
if(index_accessible(v) == index(v))
cc = []; %composante fortement connexe issue du sommet
if(~isempty(S))
[tmp, S] = pop(S);
cc = [cc tmp];
end
while(~isempty(S) && tmp ~= v)
[tmp, S] = pop(S);
***cc*** = [cc tmp];
end
if(~isempty(cc))
% Les composantes connexes n'ont pas toutes
% la même longueur. On complète donc la ligne
% avec des 0.
C = [C ; cc zeros(1,size(G,1) - length(cc))];
end
end
end
을 고칠 수 표시 별 사이에 문제가 있습니다.
경고입니다. 오류가 아닙니다. 참조를 미리 할당하면 코드가 더 빨리 실행됩니다. 'cc = []'줄에서 cc의 크기를 안다면'cc = nan (5,1)'과 같이 cc를 초기화 할 수 있습니다. 이렇게하면 나중에 채워지는 크기 5의 배열이 생성됩니다. – Daniel
저는 아직 matlab 초보자입니다. matlab에 Tarjan 알고리즘의 소스 코드가 필요합니다.이 링크에서 코드를 찾으십시오. [http://lotin.univ-tln.fr/graphes/graphtook/] tarjan.html), 나는 코드를 실행할 수 없었고, 문제는 cc와 같다고 생각 했으므로 경고이므로 주 오류는 아닙니다. 이 코드 줄을 어떻게 실행할 수 있는지, 명령 줄과 결과를 입력 한 내용은 무엇인지 말해 줄 수 있습니까? 매우 감사합니다. – user3281660
질문을 롤백했습니다. 관련 정보를 모두 삭제 했으므로 편집하십시오. 질문. 이미 대답이 있더라도 질문이 분명하게 남아 있는지 확인하십시오. –