美文网首页
基础 2.余数 hash

基础 2.余数 hash

作者: 胖达_4b7e | 来源:发表于2018-12-15 14:09 被阅读0次

    https://time.geekbang.org/column/article/72163
    同余定理:可以用余数分类

    hash/散列: 就是把任意长度的输入. 转成定长的数据, 就是和上面一样 , 把无效的数据分类, 而且这个过程是大映射到小 是不可逆的

    例子

    要快速读写 100 万条数据记录,
    最理想的情况当然是开辟一个连续的空间存放这些数据,
    但是并没有能够容纳 100 万条记录的连续地址空间
    需要用100 个较小的连续空间,这些空间彼此之间是被分隔开来的,
    内部足以容纳 1 万条记录连续存放,

    剩下的, 就是要设计一个散列函数, 把100w映射到100

    最直接想到的就是 求余


    原来 取余
    1 1
    101 1

    可以加一个随机数, 更加随机


    这个随机数MAX 要记录下来

    原来 随机数MAX hash值
    1 590199 0
    101 627901 2

    这样加随机数,更适合需要将数据重新洗牌的应用场景,比如加密算法、MapReduce 中的数据分发、记录的高速查询和定位
    最大公约数,模幂运算(DES、AES、RSA),凯撒密码,孙子定理,都是以模运算为基础的。

    相关文章

      网友评论

          本文标题:基础 2.余数 hash

          本文链接:https://www.haomeiwen.com/subject/pjcahqtx.html