美文网首页产品经理进阶
产品经理数学课(3)

产品经理数学课(3)

作者: 败家 | 来源:发表于2019-10-07 13:23 被阅读0次

    关键词:剩余,同余定理,数论,hash

    参考:

    杨迎球,中国剩余定理与同余式组,[D]安顺学院数学与计算机科学系,2009.02.15

    谈数论中的同余及其应用,衡水师专学报[D],2002.03.1

    同余理论的一些简单应用,肇庆学院学报,2013.03.28

    《程序员的数学课》——极客时间

    百度百科

    历史

    有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?——《孙子算经》卷下二十六

    释义:

    有一堆东西不知道有多少数量。三件三件地数,就会剩下两件;五件五件地数,剩下三件;七件七件地数,剩下两件。问:这堆东西共有多少件? 

    解题如下:

    条件:除3余2,除7余2,

    公倍数=3*7=21

    21*1+2=23

    证:

    23/5=4余3


    日常应用:

    今天星期5,30天后星期几?

    30/7余2

    周五+2天=周日

    那么问题来了!某个数尽除7,余数会大于或等于7吗?

    答案是当然不会!

    故而我们提炼出:余数在除数的范围内

    同余定理

    再思考一个问题:今天是本月1日,周日,本月30天,那么有几个星期日呢?

    每7天(加上本天基础天1+7),是一个周循环

    8、15、22、29

    8/7余1

    15/7余1

    22/7余1

    29/7余1

    以上这种情况被前人归纳为,同余定理

    哈希(Hash)

    在现在“区块链”泛滥的时代,你应该不陌生这种加密算法吧;

    哈希本质是“将任意⻓度的输入,通过哈希算法,压缩为某一固定⻓度的输出”

    发现没?和求余是一样一样的

    比个喻:

    问:有30W条数据,想快速读写,一个物理储存空间放不下。怎么办?

    答:放多个物理空间

    问:但数据是连续的,则需要对空间进行关联

    答:我们可以设计一个散列函数,并实现哈希表的结构

    散列函数:本质就是个检索和关联;

    f(x)=y mod size

    在这个公式中,Y表示等待被转换的数值,而size表示有限存储空间的大小,mod表示取余操作。通过余数,你就能将任何数值,转换为有限范围内的一个数值,然后根据这个新的数值,来确定将数据存放在何处。

    具像说明:

    我们可以通过记录标号模30的余数,指定某条数据存放在哪个空间。这个时候,我们的公式

    就变成了这样:

    f(x)=y mod 30

    然后我们就可以把 1、31、61、91、121这些数放在第1个空间中,以此类推,30、60、90、120…放在第30个空间中

    这样 我们就能在30的范围内检索出30w条数据。

    相关文章

      网友评论

        本文标题:产品经理数学课(3)

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