Regroupe产生一个数组

时间:2018-06-04 17:54:35

标签: matlab graph

我有一个数组nodeNames,它有以下节点:

nodeNames =
    'O 1'
    'O 2'
    'O 3'
    'O 4'
    'O 5'
    'O 6'
    'O 7'
    'O 8'
    'O 9'
    'O10'

我有一个由以下节点组成的图H

C.Nodes.Name=
    'S4'
    'O10'
    'O 1'
    'O 5, O 3, S6, S8'
    'O 2, O 8, O 6, S1, S3'
    'O 9, S5, O 4, S7'
    'S2'
    'O 7'

我想创建一个数组search,为H中的每个节点重新组合nodeNames中深度优先搜索的结果。类似的东西:

for i=1:n
    search{i}=dfsearch(H,nodeNames{i});  
end

我得到了他的错误:

Error in search (line 24)
src = validateNodeID(G, s);

Error in digraph/dfsearch (line 67)
t = search(false, G, s, varargin{:});

Error in test (line 27)
    search{i}=dfsearch(H,nodeNames{i});

我使用了一个dfsearch,它适用于'O 1''O 10''O 7',因为它们存在于H中 问题出在其余部分,我无法使用循环,因为某些节点(例如O 3)在H中不存在,它们会在C.Nodes.Name中与其他节点重新组合在一起示例:O 5O 3的单个节点中与H重新组合。关于如何在H中为nodeNames中的每个节点重新组合深度优先搜索结果的任何建议?

0 个答案:

没有答案