赞
踩
本人是数学系的, 但其实真正的爱好是计算机. 当年报志愿的时候不知听谁说了句, 学计算机, 想搞软件就去学数学, 想搞硬件就去学物理, 然后就报了数学. 在数学系, 感觉思维确实受到了训练, 但所学的课程却大多与计算机没什么"直接"联系. 要真的搞计算机, 还是需要自己多折腾计算机的课程, 还有多实践. 其实我觉得在计算机中用到数学, 主要是设计,选择和分析算法的时候会用得到.如果你只是想"设计"好的程序, 可能并不需要太多数学. 但是要是想成为计算机科学者或工程师, 恐怕还是要学一学数学的.
首先谈谈应用比较广泛的基础课:
像大家提到的微积分, 线性代数,概率论,数理统计, 随机过程什么的都是基础中的基础, 在各个学科中都有着广泛应用的.
微积分除去作为 "基础" 的作用不谈, 在用计算机建立模型的时候常常会用到.
线性代数就更有用了, 像著名的 page rank 就是特征值理论的一个重要应用. 很多问题最终都能化为求解线性方程组问题(例如, 用有限差分法或有限元法解偏微分方程, 用最小二乘法求最佳逼近,等等). 线性代数知识还常在机器学习或数据挖掘中被用来降低数据的维度. 还有很多其他的应用.
概率论,数理统计,随机过程在最近的人工智能的各个领域则是非常重要的基础, 很多机器学习算法都是基于统计模型的, 像 Bayes 统计什么的应用极为广泛(例如垃圾邮件过滤.)
离散数学和数值分析什么的和计算机的关系就比较容易看出来了. 离散数学不同的书选取的内容不大一样, 不过一般都有逻辑阿, 图论阿, 有的还有自动机什么的, 一看就和计算机关系紧密. 数学理论大多是抽象的, 想在计算机上用就离不开数值分析了; 用数值方法解一些无法求出解析解的方程也很有实用价值.
再谈谈和不同专业相关的数学知识:
像是信息安全, 编码方面的, 数论知识自然不可缺少, 建议多学一些代数知识, 也包括代数几何啊什么的. (复变函数什么的都是基础啊....)
像是(离散)算法方面的, 可以学学 Knuth 的具体数学, 另外还得学些运筹学, 图论, 组合数学什么的.
像是图形处理方面, 恐怕就需要很多几何知识了, 学几何这玩意代数和分析都得好, 像解析几何, 射影几何, 微分几何, 黎曼几何, 代数几何, 拓扑学呀都在这个领域用的上. 还得熟悉样条理论, 曲线与曲面的表示啊等等.
图像处理, 也需要不少数学. 最近利用偏微分方程,反问题啊来研究图像处理的很热门. 还有傅立叶分析, 小波分析呀都很有用.
人工智能相关的话, 得把概率, 统计, 随机过程什么的学的更深入一些.
我也不是计算机专业出身, 上面的计算机领域列的不一定足够. 如果大家有什么疑问欢迎在评论中提出, 我会帮大家调研然后补上的.
谢谢观赏~~~ :)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。