find all possible paths between 2 nodes using recursion in matlab

2 次查看(过去 30 天)
hi,i m trying to find all possible paths using recursion in matlab. the code for recurssion is as follows:
function[allpaths=findnodes(maxnodes,source,destination,path,marked)
all paths = [];
marked=[marked source];
if (source==destinstion)
allpaths=path;
disp(['path is::'num2str(allpaths)]);
return;
else
for v=1:maxnodes; //for all the neighbours of source node
if ~ismember(v,marked)
path=[path v];
allpaths=[allpaths (findnodes
(maxnodes,v,destination,path,marked))];
index=find(path==v);
path(index)=[];
else
allpaths=[path];
end;
end;
end;
but here the recursion is not working properly.
can anybody help me?
  1 个评论
Andrew Newell
Andrew Newell 2011-12-29
How exactly is it not working? Please format your code (see http://www.mathworks.com/matlabcentral/answers/7885-tutorial-how-to-format-your-question).

请先登录,再进行评论。

回答(1 个)

Jan
Jan 2011-12-29
Do not use the term path for a variable, because this shadows a very important Matlab function.
The number of square brackets in the 1st line is unbalanced.
I assume you want "allpaths = [];" instead of "all paths = [];". Spaces do matter in Matlab.

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by