美文网首页云莉的技术专题
数据结构与算法总览 & 刷题方法

数据结构与算法总览 & 刷题方法

作者: 云莉6 | 来源:发表于2020-03-02 22:20 被阅读0次

    《异类:不一样的成功启示录》

    精通一个领域

    • Chunk it up 切碎知识点
    • Deliberate Practicing 刻意练习
    • Feedback 反馈

    分解数据结构和算法

    数据结构(了解每个数据结构的原理和代码框架)

    • 一维:
      • 基础:数组 array (string), 链表 linked list
      • 高级:栈 stack, 队列 queue, 双端队列 deque, 集合 set, 映射 map (hash or map), etc
    • 二维:
      • 基础:树 tree,图 graph
      • 高级:二叉搜索树 binary search tree (red-black, AVL), 堆 heap,并查集 disjoint set, 字典树 Trie, etc
    • 特殊:
      • 位运算 Bitwise, 布隆过滤器 BloomFilter
      • LRU Cache

    算法(在头脑中回忆上面每种算法的思想和代码模板)

    • If-else, switch -> branch
    • for, while loop -> Iteration
    • 递归 Recursion (Divide & Conquer, Backtrace)
    • 搜索 Search: 深度优先搜索 Depth first search, 广度优先搜索 Breadth first search, A*, etc
    • 动态规划 Dynamic Programming
    • 二分查找 Binary Search
    • 贪心 Greedy
    • 数学 Math, 几何 Geometry

    反馈

    • 及时反馈
    • 主动型反馈
      • 高手代码(Github, LeetCode, etc.)
    • 被动式反馈
      • code review

    切题四件套

    • Clarification
    • Possible solutions
      • compare (time/space)
      • optimal (加强)
    • Coding
    • Test cases

    五步刷题法

    • 刷题第一遍
      • 5 分钟:读题 + 思考
      • 直接看解法:注意!多解法,比较解法优劣
      • 背诵、默写好的解法
    • 刷题第二遍
      • 马上自己写 -> LeetCode 提交
      • 多种解法比较、体会 -> 优化
    • 刷题第三遍
      • 过了一天后,再重复做题
      • 不同解法的熟练程度 -> 专项练习
    • 刷题第四遍
      • 过了一周:反复回来练习相同题目
    • 刷题第五遍
      • 面试前一周恢复性训练
    数据结构.png 算法.png

    相关文章

      网友评论

        本文标题:数据结构与算法总览 & 刷题方法

        本文链接:https://www.haomeiwen.com/subject/tmpikhtx.html