【问题标题】:Graphs - find common data图表 - 查找常见数据
【发布时间】:2010-08-09 23:29:22
【问题描述】:

我刚刚开始阅读图论和数据结构。

我正在构建一个示例应用程序,它应该能够找到最常见链接的 xpath。想象一下 Google serp,我的应用程序应该能够找到指向结果的所有链接的 xpath。

假设找到了这些 xpath:

/html/body/h2/a
/html/body/p/a
/html/body/p/strong/a
/html/body/p/strong/a
/html/body/p/strong/a
/html/body/div[@class=footer]/span[@id=copyright]/a

从这些 xpats 中,我想到了这样的图表(我可能完全迷失在这里):

                            html
                             |
                            body
                        h2 -     p           - div[@class=footer]
                        |        |                     |
                        a (1)  a - strong      span[@id=copyright]
                                      |                |
                                      a (3)            a (1)

这是解决这个问题的最佳方法吗?

将其存储在内存中的最佳方式(数据结构)是什么?语言不母语。我们可以看到我们有 3 个链接匹配路径 html -> body -> p -> strong -> a。

正如我所说,我对此完全陌生,所以如果我认为这是完全错误的,请原谅我。

编辑:我可能在寻找 trie 数据结构?

【问题讨论】:

    标签: language-agnostic data-structures graph-theory


    【解决方案1】:

    暂时不用担心尝试。只需使用标准图形表示(node = {value, count, parent})构建一棵树,同时立即折叠相同的分支并递增计数器。然后,按计数按降序对所有叶子进行排序,并从每个叶子向上遍历以获得路径。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-06-07
      • 1970-01-01
      • 2014-01-18
      • 2011-10-27
      • 1970-01-01
      • 2017-06-14
      • 1970-01-01
      相关资源
      最近更新 更多