我想知道我应该以哪种顺序学习不同的数学领域,这样我就可以对所有理论进行全面的概述,以防我需要解决计算机编程问题。
所以我创建了这张思维导图
我不打算知道关于如何做某件事的所有细节(例如“高斯约旦减少”),我宁愿看一个例子,但是然后用数学软件如sage-maths或数学
我想知道,例如,考虑到分析功能,如何进入泰勒系列(我已经知道了,我只是说明了我期望的那种知识深度)。
所以我所有人,我希望能够阅读有关数学的学术论文,它们适用于计算机科学/编程,并且实际上从这些文章中理解了一些东西,所以我可以使用解决实际编程问题的知识。
未决问题是:
(a)您建议您以何种顺序了解这些领域,我应该在哪些方面进行更多的研究?
(b)您是否在思维导图中看到任何缺失的区域?
答案 0 :(得分:3)
几年前,我在数据结构和算法类中被推荐为this book。它涵盖了很多相关领域(概率,图表,计数,关系等),它是免费的! :-)
答案 1 :(得分:2)
如果你想要认真,你应该在大学里获得计算机科学的研究生课程。没有替代品。
你必须知道基本集理论,大O,基本数据结构,基本实际分析。我建议看看Cormen等人。 “算法导论”和/或Manber的“算法导论:一种创造性的方法”。对于数论,检查Victor Shoup's book - 包含太多,但它在任何级别都是可读的。
我建议不要在以下主题上烦恼:复杂分析,功能分析,投射/反演几何,控制理论,数学物理,直到你知道你需要它们。
不要让你的图表变得越来越大,而是让它尽可能小。
答案 2 :(得分:1)
有一本好书,我认为可以帮助你从计算机科学研究论文和论文中获得更多。它被称为“混凝土数学:计算机科学的基础”,它可以在亚马逊上获得:
我认为这会有所帮助,因为它将是相关的,并且它的巩固将有助于加快学习过程。
即使您没有任何资金,也只需谷歌并查看该指数,以了解您可能想要学习的领域。
答案 3 :(得分:1)
这几乎是不可能回答的,因为许多编程任务根本不需要数学知识(除了计数和基本逻辑)。如果您对某个区域有特定兴趣(例如数值线性代数或统计数据),那么从那里开始。我建议的还是要掌握有限精度算法的工作原理。也许阅读一篇关于数值分析的介绍性文本,因为这将很好地理解数值稳定性是什么。一本关于算法分析的好书(关于速度和效率)不会有任何损害,如果你计划进行任何类型的数学编程,那么获得线性代数的合理知识是一个非常好的主意。应用数学中的几乎所有东西都减少到最终求解线性方程组(或迭代地这样做)。
说实话,没有正确的答案。