zoukankan      html  css  js  c++  java
  • Hash总结

    算法介绍

    这个没什么好说的,就是一段比较简单的代码,具体的话要看题目。

    自然溢出

    这个是比较好用而且容易被卡的一种Hash方式。

    (2^{64})当模数然后做(Hash),常数比较小。

    单模数

    也是比较好卡的(Hash)之一,算法就是把上面算法的(2^{64})改成了(Mod),自己钦定的一个素数。

    双模数

    这个也是比较好卡的,希望某位dalao可以卡掉这个算法,让(Hash)不复存在。

    考虑用两个模数,只有当Hash在这两个模数下都成立才是相等。

    树哈希

    考虑对于这个树的每一个点做一次遍历然后把(Hash)值存下来即可。

    当然还有异或这种便于换根(所以比较好)的作法。

    题目运用

    [BJOI2015]树的同构

    就是树Hash的板子。

    [TJOI2017]DNA

    感觉字符串有的时候就是把暴力运用到了极致。。。

    考虑最多三个不同,那你直接暴力匹配即可,(Hash+O(2))就能够用两个(log)艹翻这题。

    后话

    如果想要知道怎么卡(Hash)的话,可以找我也可以baidu

  • 相关阅读:
    包 (package)
    Object类
    异常
    接口
    抽象类
    多态(经典案例)
    三大特性:(经典代码)
    对象创建的过程(重点理解)
    final关键字
    cocos2dx工程中接入支付宝sdk
  • 原文地址:https://www.cnblogs.com/fexuile/p/11664013.html
Copyright © 2011-2022 走看看