Skip to content

Latest commit

 

History

History
67 lines (59 loc) · 2.32 KB

CommencementIsJustStart毕业也是开始.md

File metadata and controls

67 lines (59 loc) · 2.32 KB

摘要

  • 数据结构
  • 时间复杂度
  • 算法
  • 脑图
  • 化繁为简
  • 面试技巧
  • 经典习题
  • 几点感想

数据结构

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

时间复杂度

  • 截屏2019-12-15上午6.57.40.png

算法

  • 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

脑图

化繁为简【寻找重复性 —> 计算机指令集】

  • 人肉递归低效、很累
  • 找到最近最简方法,将其拆解成可重复解决的问题
  • 数学归纳法思维

面试技巧

  • Clarification:明确题⽬意思、边界、数据规模
  • Possible solutions:穷尽所有可能的解法
    • compare time/space
    • optimal solution
  • Coding:代码简洁、⾼性能、美感
  • Test cas

经典习题

  • 爬楼梯、硬币兑换
  • 括号匹配、括号⽣、成直⽅图最⼤⾯积、滑动窗⼝
  • ⼆叉树遍历、分层输出树、判断⼆叉排序树
  • 股票买卖、偷房⼦、字符串编辑距离、最⻓上升⼦序列、最⻓公共⼦序列
  • 异位词(判断和归类)、回⽂串(最⼤回⽂串)、regex和通配符匹配
  • ⾼级数据结构(Trie、BloomFilter、LRU cache、etc)

几点感想

  1. 路漫漫其修远兮,吾将上下而求索
  2. 师父领进门,修行在个人
  3. 人类的本质是重复性,要想达到某个行业的翘楚,十年如一日的枯燥乏味坚持才是王道