首页 > 编程知识 正文

学计算机编程对数学,计算机数学经典算法

时间:2023-05-05 20:58:33 阅读:149407 作者:4936

数学对计算机算法编程非常重要。 主要从以下两个方面来说明它为什么这么重要

一.培养逻辑思维能力

数学和算法编程需要较强的逻辑思维能力,程序代码的逻辑结构、前后联系、处理方法需要较强的逻辑思维能力。 数学好、逻辑思维能力强通常也会加深对算法编程的理解。

二.数学应用于算法编程

这应该是数学和算法编程比较相关的重要原因,无论是计算机基础还是非基础,数学知识到处可见。 例如,计算机的基础二进制文件、机器学习和深度学习的梯度导出、SVD分解、fzdnht分解、基于PCA的特征值求出、优化问题、密码学的多数分解、概率图模型等与数学特别相关。 我可以随便举两个例子,自己体验

例1 )给出数x,平方取倒数。

代码实现如下

这是当时经典游戏雷神之锤3中的代码,经过测试,该代码比(float ) (1.0/sqrt(x ) (x ) )快了4倍,计算性能得到了飞跃。 为此,还有论文《Fast Inverse Square Root》说明了这个代码的数学原理。 感兴趣的人可以找这篇文章研究一下。

例2 )给定某个数n,n可能非常大。 例如,用10的18次方左右的大小,求出x^2 y^2=n的解。

不使用数学知识直接暴力检索的话,时间的复杂度会变成o(n ),效率低下,即使是现在的计算机水平也很难计算出来。 如果知道Brahma GuptaFibonacci identity、Pollard-rho分解法、二次联合方程的解、滞后的笔辗转相除等数学知识,求解该问题的时间复杂度将大幅降低,可以保证在0.2秒内得出结果。

如果工作是算法岗位,数学更重要。 因为机器学习、数据挖掘、NLP等方向的基础原理几乎离不开数学。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。