100 道算法题

左程云在牛客网上发帖子说过建议 80% 备战面试的时间放在数据结构和算法上,剩下的 20% 的时间再放在基础知识上。CYC2018 在小专栏里也说过 100 道 LeetCode 会对面试帮助很大。虽然来来回回看了好些遍左程云那个初级算法课程,但是有的地方还是记不牢,准备面试的时间大部分还是花在了阅读和理解知识点上。我觉得还是把重点放回来吧,把左程云算法课程中的题目总结出来,再加上一些 LeetCode 高频题目,争取让自己的题量达到 100 题的标准,然后再去理解知识点,这样备战面试的效果应该会更好。

左程云初级算法课程

  1. 小和问题
  2. 逆序对问题
  3. 随时找到数据流的中位数
  4. 给一个无序数组,求排序之后相邻两数的最大差值,要求时间复杂度 O(N)
  5. 用数组结构实现大小固定的队列
  6. 用数组结构实现大小固定的栈
  7. 设计一个有 getMin 功能的栈
  8. 用队列结构实现栈结构
  9. 用栈结构实现队列结构
  10. 猫狗队列
  11. 转圈打印矩阵
  12. 将正方形矩阵顺时针转动 90°
  13. “ 之 ” 字形打印矩阵
  14. 在行列都排好序的矩阵中找指定数
  15. 打印两个有序链表的公共部分
  16. 判断一个链表是否为回文结构
  17. 反转单向链表和双向链表
  18. 将单向链表按某值划分为左边小、中间相等、右边大的形式
  19. 复制含有随机指针节点的链表
  20. 返回单链表入环的第一个节点
  21. 两个单链表相交的一系列问题
  22. 分别用递归和非递归方式实现二叉树先序、中序和后序遍历
  23. 折纸问题
  24. 在二叉树中找到一个节点的后继节点
  25. 二叉树的序列化和反序列化
  26. 判断一棵二叉树是否是平衡二叉树
  27. 判断一棵二叉树是否是搜索二叉树
  28. 统计完全二叉树的节点数
  29. 设计 RandomPool 结构
  30. 认识布隆过滤器
  31. 一致性哈希算法的基本原理
  32. 并查集的实现
  33. 岛问题
  34. 前缀树的实现
  35. 拼接所有字符串产生字典顺序最小的字符串
  36. 分金条的最小花费
  37. 做项目的最大收益问题
  38. 到二维数组右下角的最小路径和
  39. 奶牛问题
  40. 图的宽度优先与深度优先遍历
  41. 图的拓扑排序
  42. 最小生成树 K 算法和 P 算法

LeetCode

  1. 反转二叉树

其他

  1. 二叉树每层值最大的节点

你可能感兴趣的:(算法,链表,算法,二叉树,队列,数据结构)