Math 我怎样才能在没有太多正式培训的情况下学习高级编程相关数学?

Math 我怎样才能在没有太多正式培训的情况下学习高级编程相关数学?,math,computer-science,graph-theory,discrete-mathematics,Math,Computer Science,Graph Theory,Discrete Mathematics,我没有上过大学微积分以上的数学课。然而,在我的编程过程中,我从博客和阅读中学到了很多数学和comp-sci,我真的相信我有一个不错的数学头脑。例如,我喜欢并成功地完成了Euler项目 我想深入学习一些很酷的数学,特别是离散数学、集合论、图论、数论、组合学、范畴论、lambda微积分等等。 到目前为止,我的印象是,我已经准备好在概念层面上接受这些,但我在数学语言和符号方面真的很困难。我只是不“说这门语言”,虽然我正在努力学习,但我觉得这门语言的速度非常慢。即使是一个公式或一个术语繁重的段落,我也要

我没有上过大学微积分以上的数学课。然而,在我的编程过程中,我从博客和阅读中学到了很多数学和comp-sci,我真的相信我有一个不错的数学头脑。例如,我喜欢并成功地完成了Euler项目

我想深入学习一些很酷的数学,特别是离散数学、集合论、图论、数论、组合学、范畴论、lambda微积分等等。 到目前为止,我的印象是,我已经准备好在概念层面上接受这些,但我在数学语言和符号方面真的很困难。我只是不“说这门语言”,虽然我正在努力学习,但我觉得这门语言的速度非常慢。即使是一个公式或一个术语繁重的段落,我也要花上几个小时才能看完。是的,我可以查找术语和定义,但这是一个极其繁重的过程,它在很大程度上掩盖了我试图学习的理论的简单性


我真的很担心,我将不得不回到我中断的地方,买一本中级数学教科书,花一些认真的时间在练习上,以训练自己的思维方式。不过,这听起来令人惊讶地无聊,所以我想知道是否还有其他人对此有任何想法或经验。

在当地社区学院上课。如果你像我一样,你需要这个结构。对于被评分的压力,有一些话要说。我的意思是有太多的东西需要学习,如果你想得到的不仅仅是一个短暂的点头,嗯,一种理解的话,那么单独去是不现实的。

如果你不想去上课,你仍然需要得到课程会给你的东西:学习材料的时间和大量的练习


所以,抓起课本,开始做练习题。真的没有别的办法(除非你已经弄清楚渗透是如何发生的…。

考虑一下在当地大学上离散数学和证明的审计课。离散数学课程将教你一些真正有用的东西(图论、组合数学等),而证明课程将教你更多关于数学思维和写作风格的知识。

我同意@John Kugelman的观点,课程是正确完成任务的途径,但如果你不想上课,互联网有很多资源可以帮助你,包括录制的讲座,我发现这些讲座比书籍和论文更容易接近

我建议你看看麻省理工学院的开放式课程。那里有一家公司,我很喜欢在这里工作

Youtube和videotouctures.com也是视频讲座的好资源


最后,还有一本免费的CS数学书。

听起来你和我的处境一样。我发现数学教育中的大部分都是错误的。无论是原因还是结果,我也发现大多数数学课文写得不正确。例外情况很少,但值得注意。例如,由编写的任何内容都是朝着正确方向迈出的一步

以下几篇文章非常清楚地说明了这个问题:

这里有一篇文章介绍了一种简单的学习方法,旨在保留知识:


找一位好的导师,他是该领域的专家,愿意定期与你在一起。

只有在课堂上才能获得任何知识

查看

还有他们


Project Euler也是一种思考数学的好方法,因为它与编程有关数学符号类似于几种计算机语言:

  • 简明的
  • 严格的
  • 基于许多成语
  • 相当数量的当地变化和习俗
就像使用计算机语言一样,你不需要“一次清洗整头大象”:一次只清洗一部分

你的初步计划可能是

  • 确定你感兴趣或重要的数学领域。(看来你已经有了一点这种感觉,CS已经帮你建立了一种文化。)
  • 参加(或仅仅是审核)这方面的一些正式课程。我同意这篇文章中的几个答案,最好是在当地大学开设一门面对面的课程,但是,也许在开始的时候,或者为了确保充分利用一门课,首先在麻省理工开放式课程中自学,类似的在线资源和相关书籍是可以/可以的
  • 如果一个数学领域的先决条件对记谱法或一些基本概念或(通常是机械计算和转换技术)的熟练程度太高。没问题!只需回溯一点,学习这些基础(以及这些基础!),然后再次前进
  • 找一个“大师”,一个有着广泛数学文化和经验的人,不一定是数学家,物理学方面的人也很好,事实上,他们通常能以更实用的方式表达数学。使用这位大师来指导你,因为他/她可以向你展示这些大的部分是如何组合在一起的

注:学习数学符号本身并没有什么好处。相反,它应该在上下文中学习,就像说C#成语在使用时和与特定任务相关时记忆更好,而不是在真空中学习。然而,一篇相关的SO帖子提供了一些解读和学习的资源

学习密集材料有一种技巧,比如数学和数学CS。学习不熟悉的抽象东西是很难的,最有效的方法是分阶段熟悉它。首先,你需要略读一下:如果你在第一遍没有理解所有内容,不要担心。然后休息一下;休息后,再深入地检查一遍。泡沫,ri