识别幂函数输入的正则表达式(二)

一、问题: 在上一篇《识别幂函数输入的正则表达式》中,所使用的正则表达式还是非常初级的,即只能识别指数为正数的情况。y = x^2 能够被识别,而 y = x ^ -2,则不能被识别。 现在要改进原正则表达式,使它能够识别这样的幂函数输入: y = x ^ 2 y = x ^ –2 y = x ^ + 2 y = x ^ (-3/2) 二、解决方案: 增强的正则表达式为:/(\w... [More]

识别幂函数输入的正则表达式

一、问题: 自己做了个在线图形计算器,在初级版本中,如果需要画一个幂函数,就需要类似如此输入: y  = pow(x, 2) 今天对其进行了一个小小的升级,使得可以按照惯例,如此输入: y = x^2 如何做到这点呢? 二、解决方案: 为了快速升级,此次没有对函数语法解析算法进行修改,只是拦截了用户的输入,在进行语法解析前,对输入进行了字符串级别的替换。即将 y = x^... [More]

数据点的最小二乘多项式拟合

一、问题: 给定一个数据点的集合: { (xi, yi) | i = 1, 2, …, n} 现在使用m次多项式函数 y = amxm + am-1xm-1 + … + a2x2 + a1x + a0 对其进行拟合,使得拟合的误差平方和最小。 求能达到此目标的参数 [am , am-1 , …, a2 , a1 , a0]T 的值。 二、解: 特别地,当 m=3 时,y = a... [More]

给JavaScript的Array类添加几个统计方法

一、问题 在编程对数据进行统计时,经常使用数组来存储数列。然后JavaScript的Array类,几乎没有相关的方法(除了.length得到数列的容量外)。 前面给JavaScript的Array对象添加了两个最大最小值方法,今天再给扩充一下,添加求和、平方和、平均值、偏差平方和、样本标准差、总体标准差这几个方法。 二、源码 Array.prototype.sum = functi... [More]

数据点的最小二乘线性拟合

一、问题: 给定一个数据点的集合: { (xi, yi) | i = 1, 2, …, n} 现在使用线性函数 y = αx + β 对其进行线性拟合,使得拟合的误差平方和最小。 求能达到此目标的α, β值。 二、解: 令 ,,,, 则 , 三、证明: 每个原始数据点为(xi,yi),其拟合的点为,对每个xi,其拟合值与原始值yi的误差计为: 由于此拟合是线性的,即... [More]

长得像人脸的数学函数

数学函数可分成这些类别: 线性函数 多项式 幂函数 有理函数 代数函数 三角函数 指数函数 对数函数 超越函数 其中有理函数这个类别非常有趣,它是两个多项式的比例式: 其中P和Q都是多项式。有理函数的定义域包含了所有使得的x值。 说它有趣是因为它们中间某些函数的图形看起来像张人脸!不过一般都是苦脸。 这个函数 就是一个定义... [More]