Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sorting 从属性集构建层次结构_Sorting_Inheritance_Attributes_Hierarchy - Fatal编程技术网

Sorting 从属性集构建层次结构

Sorting 从属性集构建层次结构,sorting,inheritance,attributes,hierarchy,Sorting,Inheritance,Attributes,Hierarchy,我对一些我认为很基本的东西有点困扰。然而,我似乎什么也找不到。可能是因为我问的问题不对 假设我有三组(可能是冗余的)数据A,B,C=(A,B,C),(A,B,d),(A,e,f) 我需要的是一些工具来为我建议一个层次结构 像这样: (a) (b) (ef) (c) (d) 实际上,每个集合中有更多的集合和许多属性,但它们都是密切相关的,我不想手动查找和构建层次结构。如果您想用普通元组构建层次结构,请用它们构建一棵树(或者更确切地说,森林) 在你的情况下,树看

我对一些我认为很基本的东西有点困扰。然而,我似乎什么也找不到。可能是因为我问的问题不对

假设我有三组(可能是冗余的)数据A,B,C=(A,B,C),(A,B,d),(A,e,f)

我需要的是一些工具来为我建议一个层次结构

像这样:

      (a)
   (b)    (ef)   
(c)   (d) 

实际上,每个集合中有更多的集合和许多属性,但它们都是密切相关的,我不想手动查找和构建层次结构。

如果您想用普通元组构建层次结构,请用它们构建一棵树(或者更确切地说,森林)

在你的情况下,树看起来像

      c
    /
   b - d
  /
a - e -f
算法很简单:

  • 从元组中选取第一个元素
  • 在林中查找具有此值的顶级元素(如果未找到,则创建一个)
  • 从元组中选取下一个值
  • 在以前找到的节点的子节点中查找匹配元素
  • 重复,直到利润

如果你想用纯元组构建层次结构,那就用它们构建一棵树(或者更确切地说,一个森林)

在你的情况下,树看起来像

      c
    /
   b - d
  /
a - e -f
算法很简单:

  • 从元组中选取第一个元素
  • 在林中查找具有此值的顶级元素(如果未找到,则创建一个)
  • 从元组中选取下一个值
  • 在以前找到的节点的子节点中查找匹配元素
  • 重复,直到利润