python求一条线的长度_用Python学习离散数学

计算机当中有很多问题都和数学相关,甚至可以说,现实中的大多数问题,只要不是NP问题,都可以用目前的"自动机"即计算机进行求解,现今的计算机都是图灵完备的(若要知道什么叫做图灵完备,请查询图灵机),所以大多数的问题还是能做到解的,但是有些问题你无法证明其有解,或者无法证明其无解,所以就有这么些问题比如NP问题,其含义是对某一个问题算法给定步数或者给定时间,但是在限定的时间或者步数之内无法求出解。这类问题都被称作NP问题,计算机学当中有大一部分都是NP问题,但是现在要讲的不是NP问题,而是数学,计算机和数学紧密相关,比如布尔运算,理论上只要存在非门,就能组合出其他所有的逻辑门,而电子元件中,有一个元件很有意思,工作原理和非门相似,即PN结。

扯了这么多,我们不需要去解决NP问题,也不需要知道PN结工作机制,现在,只是单纯地去了解下与我们息息相关地离散数学,我很早之前写了一个TypeScript的库,也是关于离散数学的,项目地址如下:

jingyuexing/MathLib​github.com
bc2bd47cb396edf76fc993557cfd2447.png

现在,使用Python来构建一个离散数学的Python库,让我们来看看如何编写

比如计算平均值,其公式如下

根据公式,我们知道,首先要求和,然后除以整个的数据个数,计算机当中碰到多个数据的可以用到数组,而数据的个数可以由数组的长度得到,由此思路,我们可以写如下代码

def Mean(*args):
    '''
        求平均值
    '''
    Total=0
    for i in args:
        for x in i:
            Total=Total+x
    return (Total/args.__len__())

又比如说求方差,其公式如下

上文当中的平均值在方差中也有用,根据公式,可以得到下面的代码

未完待续。。。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值