Graph 什么是二元图?

Graph 什么是二元图?,graph,tinkerpop,Graph,Tinkerpop,我在学习Apache TinkerPop时遇到了这个术语 在计算机中对图形进行建模并将其应用于现代数据集和实践时,通用的面向数学的二进制图形被扩展以支持标签和键/值属性 谷歌搜索“二叉图”会返回一个“二叉树”的定义,它似乎不适合这里的上下文。二叉图是二叉树的图形数据表示。以下面的图形数据()为例,其中每个节点都可以有左或右子节点 g.addV('node').as('1').property(single, 'data', 22). addV('node').as('2').property

我在学习Apache TinkerPop时遇到了这个术语

在计算机中对图形进行建模并将其应用于现代数据集和实践时,通用的面向数学的二进制图形被扩展以支持标签和键/值属性


谷歌搜索“二叉图”会返回一个“二叉树”的定义,它似乎不适合这里的上下文。

二叉图是二叉树的图形数据表示。以下面的图形数据()为例,其中每个节点都可以有左或右子节点

g.addV('node').as('1').property(single, 'data', 22).
  addV('node').as('2').property(single, 'data', 16).
  addV('root').as('3').property(single, 'data', 9).
  addV('node').as('4').property(single, 'data', 5).
  addV('node').as('5').property(single, 'data', 2).
  addV('node').as('6').property(single, 'data', 11).
  addV('node').as('7').property(single, 'data', 15).
  addV('node').as('8').property(single, 'data', 10).
  addV('node').as('9').property(single, 'data', 1).
  addV('node').as('10').property(single, 'data', 8).
  addE('left').from('1').to('2').
  addE('left').from('3').to('4').
  addE('right').from('3').to('6').
  addE('left').from('4').to('5').
  addE('right').from('4').to('10').
  addE('left').from('5').to('9').
  addE('left').from('6').to('8').
  addE('right').from('6').to('7').
  addE('right').from('7').to('1')

条件:

  • 每个节点只能有一个父节点
  • 每个节点最多可以有2个子节点(左和右)

  • 二叉图是二叉树的图形数据表示。以下面的图形数据()为例,其中每个节点都可以有左或右子节点

    g.addV('node').as('1').property(single, 'data', 22).
      addV('node').as('2').property(single, 'data', 16).
      addV('root').as('3').property(single, 'data', 9).
      addV('node').as('4').property(single, 'data', 5).
      addV('node').as('5').property(single, 'data', 2).
      addV('node').as('6').property(single, 'data', 11).
      addV('node').as('7').property(single, 'data', 15).
      addV('node').as('8').property(single, 'data', 10).
      addV('node').as('9').property(single, 'data', 1).
      addV('node').as('10').property(single, 'data', 8).
      addE('left').from('1').to('2').
      addE('left').from('3').to('4').
      addE('right').from('3').to('6').
      addE('left').from('4').to('5').
      addE('right').from('4').to('10').
      addE('left').from('5').to('9').
      addE('left').from('6').to('8').
      addE('right').from('6').to('7').
      addE('right').from('7').to('1')
    

    条件:

  • 每个节点只能有一个父节点
  • 每个节点最多可以有2个子节点(左和右)

  • 感谢您的回答和图片帮助澄清!如果我理解正确的话,“二元图”和“二元树”是完全一样的。这是正确的吗?换句话说,“二元图”由最多可以有两个指针(左或右)的节点组成。此外,“图形”中的每个节点只能从一个父节点接收一个指针。@regs完全正确,解释得很好。我在我的回答中也加入了你们的观察结果,以供我和其他人将来参考。感谢你们的回答和图片帮助澄清!如果我理解正确的话,“二元图”和“二元树”是完全一样的。这是正确的吗?换句话说,“二元图”由最多可以有两个指针(左或右)的节点组成。此外,“图形”中的每个节点只能从一个父节点接收一个指针。@regs完全正确,解释得很好。我在我的回答中也加入了你们的观察,以供我自己和其他人将来参考。