如何开始学习数据结构和算法?你可以为我建议一些书籍或网站吗?什么是初学者最好的方式?阅读书籍或互动学习。
答案 0 :(得分:1)
首先选择任何一种编程语言并掌握它。 清除所有基本概念。
您可以从以下链接开始学习数据结构 -
https://www.hackerearth.com/practice/data-structures/arrays/1-d/tutorial/ http://www.geeksforgeeks.org/data-structures/
算法 -
https://www.hackerearth.com/practice/algorithms/searching/linear-search/tutorial/
http://www.geeksforgeeks.org/fundamentals-of-algorithms/
还有很多其他网站,但我更喜欢这两个。
您可以通过以下链接练习相同的问题 -
https://www.hackerearth.com/
https://www.hackerrank.com/
https://www.codechef.com/
http://www.spoj.com/
我更喜欢的算法书是 - Thomas H. Cormen介绍算法 练习很多就好了!
在交互式学习和阅读书籍之间我建议两者都应该同时完成。只有阅读书才能为您提供理论知识,但在上述平台上练习将有助于您更快地进行编码,减少错误。
答案 1 :(得分:1)
我读过的最好的书是竞争性编程3,它教授C ++中的算法和数据结构,重点关注在线评委的问题。
您可以在CodeForces和TopCoder中搜索好的教程,这是2个令人惊叹的论坛和在线评委,您可以编写问题并提交。
如有疑问,我强烈推荐你UVa和Spoj。
有时,当您对某些算法感兴趣时,您也可以在YouTube中查找它们。 GitHub中有很多各种算法的实现(你可以通过Google轻松找到)。
算法的想法不知道如何实现其中的数千个,而是知道在哪里使用它们。