可能重复:
How to improve my math skills to become a better programmer
Basic Math Book for a Programmer
到目前为止,我的职业生涯相当奇怪。 首先,我从一所医学院毕业。然后我进入营销(药品)。 然后嗯,过了一段时间,我决定去寻找我的(直到那时)业余爱好并成为一名“专业”程序员。 从那时起我就一直很成功。我有很多语言“在我的掌控之下”。我的收入并不差,而且我已经非常重视开源社区。 p>
事情就是我吮吸数学:)。嗯,当然,当我完成工作时,并非完全如此。但我不知道我有多害羞。我不知道如何找出答案。
在我的中学/高中时期,数学从来没有真正优先考虑过。我只选择尽可能少的钱,因为我总是准备去医学。当然,我知道代数的基础知识。像“正常”和方形等式的东西。几何的基础知识。但是,有些事情我错过了。 最近我对概率论,无穷大,混乱/秩序等事物着迷。但每次我尝试学习这些主题的东西时,我都会遇到一层术语,特殊符号和一些特殊的思维方式,那就是非常喜欢我(程序员),但也有很多不同(对我来说很奇怪)。
那么,你会推荐我什么样的书?找到合适的东西很难。我发现的一切都太容易(和无聊)或完全无法穿透。
答案 0 :(得分:2)
当然我知道的基本知识 代数。像“正常”和 方程。也是基础知识 几何。但是,有一些事情 我错过了最近我是 被诸如此类的东西着迷 概率论,无穷大, 混乱/秩序等。
我发现数学是一个单向的门:如果你没有早点通过,那就很难回头了。拾取并非不可能,但没有纪律就更难。
关键是做问题。你不只是阅读数学书籍 - 你在将机制融入大脑时遇到了问题。如果你只是在阅读,我会说它不可能学习它。
最好回到你所知道的并开始工作。如果您对基本代数和几何感觉不错,请开始考虑介绍微积分或统计。从基本的东西开始:一个变量微分和/或积分微积分或统计。做了很多问题并且感到舒服。
如果您是计算机科学家,您会发现离散数学,图形,数值方法和线性代数都很有帮助。
不要指望快速做到这一点,特别是如果你对它很随意。
我推荐两个很棒的资源:
两者都是免费的;两者都很棒。
答案 1 :(得分:2)
假设你的基本代数已经下降,我将从单变量微积分开始。我使用了几本计算书,发现Larson's是最好的。希望你能在图书馆找到它。
之后不久转向线性代数。 This book是免费且非常好的。
不要担心掌握一切,你可能想回到线性代数。
然后找一本强调证明,集合,关系,功能和公理的书。我喜欢Lay的Analysis with an introduction to proof。通过归纳学习证明特别好。
从这里,你应该能够打破你发现自己反对的那个难以穿透的墙。你将掌握术语,阅读任何本科数学教科书。
我推荐图论,组合学和线性代数,用于它们在计算机科学中的应用。
祝你好运!答案 2 :(得分:1)
基础知识:
更高级的东西:
答案 3 :(得分:1)
您可以查看在线提供的一些免费课程资料from MIT。
答案 4 :(得分:0)
调查当地大专院校的数学课程。通常情况下,他们在白天为入学的学生提供这些课程,但他们有时也会上夜校。然后,在教育之前与教授交谈,看看你的数学技能是否适合全班,或者你会在大门外挣扎。