导航:首页 > 软件知识 > 程序员用数学做什么

程序员用数学做什么

发布时间:2023-01-15 15:37:52

Ⅰ 编程所需要的数学知识

计数的能力: for循环中经常用, 小学生都会。
数字的加减乘除 : 每种编程语言都会内置支持, 都不需要你自己算
余数和模: 偶尔会用得到
集合运算: 交集、并集、差集 , 编程中用的不多。
布尔运算: AND , OR, 非
各种进制: 二进制、十进制、十六进制
还有哪些? 我想不起来了, 欢迎补充。
当然这和我从事的编程领域有极大关系, 如果我做的不是Web开发, 而是搜索,游戏, 安全,算法,人工智能等, 那对数学的要求估计就开始飙升了。
其实计算机的基础是数学, 只是我们一直在应用层编程, 体会不到罢了。
比如说我们日常使用的计算机,绝大部分都是所谓冯诺依曼结构(参见文章《冯·冯诺依曼计算机的诞生》) ,这个结构可以说是图灵机这个概念机器的具体实现,而图灵机就是一个纯数学的东西啊 ,没有图灵机这么伟大的抽象作为数学基础, 现代的计算机是制造不出来的。
再比如说密码领域需要很多数论的知识,RSA算法就涉及到大素数的分解;
我们常用的Mysql, Oracle 等关系数据库的底层基础是离散数学的笛卡尔乘积;
通信系统中很重要的一个原理就是傅里叶变换。
编译器会用到有限状态机;
数据的压缩会用到各种数学的算法;
项目管理中的进度管理,甘特图数学基础就是图论。

Ⅱ 数学建模比赛中,程序员具体需要做些什么,以及程序员的数学水平应该达到什么程度

在本科阶段,我本人参与过数学建模,我们团队最终也获得了全国一等奖的荣誉。在数学建模比赛中,程序员起到的是至关重要的作用,因为大部分工作都是由程序员去完成的。


1、你要去建模(要会微分方程, 机器学习算法, 图论);

2、写程序搞定你的模型(做A题的话你要会数值分析, 有些地方也叫计算方法. 至于决策树, 图论, PCA降维, 聚类分析什么的, 那就是程序员的老本行了);

3、debug你的程序得到看上去正确的结果;

4、在论文里面详细的描述你的算法和实现过程。

个人认为,程序员在数学建模中起到最重要的作用,如果一个团队里面只有一个程序员,那么这个人的工作量无疑是最大的。

Ⅲ 程序员需要怎样的数学基础

离散数学对程序员来说非常重要,还有组合数学、线性代数、概率论、数论等等,即使你将来不做研究,这些基础知识也能极大地提高你的水平。计算机科学对离散数学的要求很高,建议你先学习前面提到的这些课程,然后学习计算机算法和数据结构,再配合到网上的在线题库做题,过程很艰辛,但是对你的帮助会很大。

推荐书目:

《具体数学》(先学完前面的数学课程,在水平有一定进步以后再看)

《算法导论》(应该人手一本的好书)

简单来说,学数学的目的,一方面是活跃你的思维;另一方面是为了深入学习算法打基础,设想一下,同样的问题,普通人的程序要几十分钟甚至几小时几天才能解决出来,甚至根本无法解决,而你精心设计的程序却能在1秒内解决出来,这就是数学的魅力、算法的魅力。

其实,一切取决于你是否想做一个高级程序员。如果你做体力活(其实一般编程别人都认为是体力活),那你可以不学,因为你用不到,但是,你要是做技术上的创新,做个很强的程序员,没有数学的支持,很难。

你既然学习了C,c++,你也知道算法的重要性,同样一个问题,我用13行程序解决了,我的同学居然用了33行,因为他不懂的用数学。你要达到什么高等,取决于你的数学修养。当然,要做一个普通的程序员就不用学习了。要挑战自己,做个好的,优秀的,学习数学吧!

阅读全文

与程序员用数学做什么相关的资料

热点内容
桥梁技术措施费包括哪些 浏览:585
cpu中的少量数据是什么 浏览:964
微博和小程序有什么区别 浏览:933
纯碱在哪个交易所 浏览:236
oppo手机怎么用usb数据线连接电视 浏览:174
小米l1和l5数据线哪个快 浏览:743
技术入股怎么评估 浏览:638
如何查询中国逆回购的交易记录 浏览:802
集成墙板怎么展示产品 浏览:455
注塑透明产品熔接痕怎么调 浏览:746
2021国外缺什么产品 浏览:423
同步数据线有什么好处 浏览:985
什么防脱生发产品好 浏览:351
哪里可以学习无痕防滑技术 浏览:556
家庭日用清洁产品如何拍摄 浏览:433
内部交易如何定价外协价格管理 浏览:868
第二次考教资需要填哪些信息 浏览:814
物业公司的市场部是干什么的 浏览:842
完美世界里怎么交易好友 浏览:178
除了程序员还有什么技术 浏览:928