开发者社区> 问答> 正文

怎么学好数据结构与算法,好难啊

怎么学好数据结构与算法,好难啊

展开
收起
知与谁同 2018-07-22 13:52:24 2680 0
3 条回答
写回答
取消 提交回答
  • Keep It Simple , Stupid. 独立博客:白水东城(www.baishuidongcheng.com)

    确实好难,建议学算法刷题的时候多记一些常规的套路,然后反复在脑子中回想这样做的优点,学多了之后解一道题的方法自然也多了,那就思考比较方法间的差异

    2019-07-17 22:53:01
    赞同 展开评论 打赏
  • 多锻炼逻辑思维能力
    2019-07-17 22:53:00
    赞同 展开评论 打赏
  • 先学好语言,这是学习的基础。
    有些算法书上在学习语言部分会有一点算法包含在内,比如递归。
    要学算法,先练好递归,这会对你深入学习其他算法有很大的帮助。
    树形结构是数据结构中较难的部分,也是数据结构的基础,主要靠练。
    还有就是,不要总是学习理论,合上书本认真地把算法用代码和实现是最重要的。
    不要背代码,没用的,注重理解。
    刚开始会有些不习惯,学得多了就好了。
    -------------------------------------------------------------------------------------------
    内容出自http://www.zhihu.com/question/19830721
    希望对你有帮助
    1. 程序 = 数据结构 + 算法

    2. 学习:刚开始看时肯定会有些不清楚,因为你是刚学完 语言,对语言还不太熟练。你学习数据结构时找一本经典的数据结构书,看完一个数据结构后用语言将其实现。开始时的实现肯定会有困难,那么请百度下会有很多优秀的数据结构源码的。你可以模仿这些优秀的源码写。请记住一定要开始时自己实现,当被卡住了就看一下源码,看看自己被卡在了什么地方,引起注意以便下次自己会写。当你把书上的数据结构源码写了一遍之后,你已经超过了你绝大部分的同学。

    3. 运用: 这时你就需要对这些数据结构加以运用,你可以在百度上搜索“某个数据结构 + ACM”,你就会看到一些题目,这些题目都是数据结构的运用,甚至有这些数据结构的变形。每种数据结构做5题左右。期间你还会遇到程序另一重要的方面算法,有不会的就 百度。 期间可以学到的数据结构和算法做小软件玩儿,例如压缩软件,五子棋之类的。

    4. 深入: 当你完成了第三步你已经是你们学校的小高手了。这时看你的方向如果这时发现自己喜欢 ACM 的话就去搞 ACM,如果不感兴趣,就找自己感兴趣的技术学习一下,做几个完整的项目,例如写个编译器,或者实现一个简单的编程语言。

    总结:无论选择哪条道路只要按照这些做了,你毕业后肯定会成为抢手货。
    -------------------------------------------------------------------------------------------
    也就这样了:
    时间并不会因为你的迷茫和迟疑而停留,
    就在你看这篇文章的同时,
    不知道有多少人在冥思苦想,
    在为算法废寝忘食,
    不知道有多少人在狂热地拍着代码,
    不知道又有多少提交一遍又一遍地刷新着OJ的status页面……
    没有谁生来就是神牛,
    而千里之行,
    始于足下。
    我期盼NOIP一等榜上有你(虽然我不知道你叫什么)。
    2019-07-17 22:53:00
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
超全算法笔试 模拟题精解合集 立即下载
超全算法笔试-模拟题精解合集 立即下载
程序员面试宝典 立即下载