寻找学习理解算法书籍/理论所需数学的途径

Goi*_*Aum 18 algorithm math

在大学里我已经把所有的东西都拿到了微积分之前,但是当我试图通过唐纳德·克努斯的书籍,甚至像这个链接这样的东西时: http://en.wikipedia.org/wiki/Self-balancing_binary_search_tree我最后看看数学,这对我来说毫无意义.我不是在寻找魔法,我不希望在一周内理解这一点,我只是在寻找一个好的毕业计划来阅读/探索让我在那里.任何指针都是受欢迎的,作为一名专业程序员,经过20多年的努力,我觉得这很好.在此先感谢大家!:-)

Bri*_*nar 11

我实际上建议你到当地大学学习一门离散数学课程.这极大地帮助了我.直到我有了这个,我才明白递归(这是基于数学归纳法.)你将在一个很好的离散数学课程中学到很多其他概念,这些概念非常非常有用(图论,渐近符号,组合学) ...)

我也建议上课一个年级.我一直注意到这会让人们更认真地对待课程,即使它不符合学位路径或任何超过成绩的东西.

如果您当地的大学很好,他们可能会提供辅导课程和办公时间,您可以去咨询问题并获得澄清.这些确实非常有价值,并且帮助我以更深刻的方式,更快地学习东西,比我自己能够学到的东西更快.

你可能需要学习微积分以满足先决条件,但如果你想增加数学素养,我也会建议你这样做.这个'答案'至少需要一个学期,更像是两个学期,但我认为这是要走的路.这不是一个直接的解决方案,但是如果你在这两个课程中表现良好(并且你附近有一所好的大学),你会在数学上变得更好.)

你的个人资料显示你在达拉斯.我找到了门课程(没有先决条件!).教学大纲看起来像是覆盖了很多好材料,课程在下午5:30见面(对工作人员有益!).如果他们在下学期提供类似的东西,我会考虑一下.如果你打电话给教练,我相信他很乐意和你谈谈他对夏天和秋季安排的了解.

这条路对我来说效果很好.

祝好运!


Thi*_*yen 8

你可以尝试这个:http://www.amazon.com/Concrete-Mhemathematics-Foundation-Computer-Science/dp/0201558025

这是一个在线提供的pdf版本,你可以轻松地谷歌.

我的很多优秀程序员的朋友推荐它.


Vin*_*tin 5

很多才华横溢的程序员在理解算法背后的数学之前就已经理解了算法.数学只是为了帮助,他们不是为了让你理解一切.您需要花更多时间阅读算法和复杂性,然后您可能会了解如何评估它们.

我建议你阅读更多有关算法复杂性的书籍.