find all possible paths between 2 nodes using recursion in matlab
1 view (last 30 days)
Show older comments
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 Comment
Andrew Newell
on 29 Dec 2011
How exactly is it not working? Please format your code (see http://www.mathworks.com/matlabcentral/answers/7885-tutorial-how-to-format-your-question).
Answers (1)
Jan
on 29 Dec 2011
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.
0 Comments
See Also
Categories
Find more on Graph and Network Algorithms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!