代码之家  ›  专栏  ›  技术社区  ›  Jason S

计算数据结构的哈希值?

  •  2
  • Jason S  · 技术社区  · 16 年前

    假设我想使用MD5这样的哈希算法来计算数据结构的哈希值,该算法接受串行流,用于等价性检查。(我想记录哈希值,然后稍后在相同或等效的数据结构上重新计算哈希值,并检查哈希值以高概率衡量等效性。)

    有标准的方法吗?

    4 回复  |  直到 16 年前
        1
  •  3
  •   Grumdrig    16 年前

    对于第一个问题,还要对字符串的长度进行哈希运算。这将区分它们的哈希值。

    第二,对钥匙进行排序。

        2
  •  2
  •   erickson    16 年前

        3
  •  1
  •   alexkr    16 年前

    如果你想要一个稳定和可移植的解决方案,你可以通过为数据结构实现“序列化”方法来解决这个问题,序列化将产生字节流(或者更常见的是,输出到字节流)。 然后,您可以对序列化流使用哈希算法。通过这种方式,您将能够通过显式转换数据来解决您提到的问题。作为其他附加功能,您将能够将数据保存到硬盘上或通过网络发送。

    对于字符串,您可以实现长度优先的Pascal类型存储。

        4
  •  1
  •   asveikau    16 年前

    推荐文章