查找嵌套字典的元素之间的最短路径

时间:2019-03-19 05:53:18

标签: dictionary graph dependency-parsing allennlp

如何找到嵌套字典的任意两个元素之间的路径,如下所示:

{
  'word':'good',
  'nodeType':'root',
  'attributes':[
      'JJ'
  ],
  'link':'root',
  'spans':[
      {
        'start':25,
        'end':30
      }
  ],
  'children':[
      {
        'word':'resolution',
        'nodeType':'nsubj',
        'attributes':[
            'NN'
        ],
        'link':'nsubj',
        'spans':[
            {
              'start':11,
              'end':22
            }
        ],
        'children':[
            {
              'word':'the',
              'nodeType':'det',
              'attributes':[
                  'DT'
              ],
              'link':'det',
              'spans':[
                  {
                    'start':0,
                    'end':4
                  }
              ]
            },
            {
              'word':'screen',
              'nodeType':'nn',
              'attributes':[
                  'NN'
              ],
              'link':'nn',
              'spans':[
                  {
                    'start':4,
                    'end':11
                  }
              ]
            }
        ]
      },
      {
        'word':'is',
        'nodeType':'cop',
        'attributes':[
            'VBZ'
        ],
        'link':'cop',
        'spans':[
            {
              'start':22,
              'end':25
            }
        ]
      },
      {
        'word':'but',
        'nodeType':'cc',
        'attributes':[
            'CC'
        ],
        'link':'cc',
        'spans':[
            {
              'start':30,
              'end':34
            }
        ]
      },
      {
        'word':'high',
        'nodeType':'conj',
        'attributes':[
            'JJ'
        ],
        'link':'conj',
        'spans':[
            {
              'start':51,
              'end':56
            }
        ],
        'children':[
            {
              'word':'price',
              'nodeType':'nsubj',
              'attributes':[
                  'NN'
              ],
              'link':'nsubj',
              'spans':[
                  {
                    'start':38,
                    'end':44
                  }
              ],
              'children':[
                  {
                    'word':'the',
                    'nodeType':'det',
                    'attributes':[
                        'DT'
                    ],
                    'link':'det',
                    'spans':[
                        {
                          'start':34,
                          'end':38
                        }
                    ]
                  }
              ]
            },
            {
              'word':'is',
              'nodeType':'cop',
              'attributes':[
                  'VBZ'
              ],
              'link':'cop',
              'spans':[
                  {
                    'start':44,
                    'end':47
                  }
              ]
            },
            {
              'word':'too',
              'nodeType':'advmod',
              'attributes':[
                  'RB'
              ],
              'link':'advmod',
              'spans':[
                  {
                    'start':47,
                    'end':51
                  }
              ]
            }
        ]
      }
  ]
}

给出两个键,我需要找到节点的所有属性以及到达另一个元素必须经历的链接。

0 个答案:

没有答案