/Algorithm

leetcode,算法

Primary LanguagePython

栈和队列

  1. 递归栈进行排序 🌟
  2. 利用栈解决汉诺塔问题 🌟🌟
  3. 利用双端队列解决滑动窗口问题 🌟
  4. 利用单调栈解决数组内前后元素大小的问题🌟🌟
  5. 遍历二叉树🌟
  6. 反转二叉树🌟
  7. 利用单调栈求解子矩阵中全为1的最大子矩阵 🌟🌟🌟
  8. 最大值减去最小值小于或等于num的子数组数量 🌟🌟🌟🌟
  9. 可见山峰的数量 🌟🌟🌟🌟

链表

  1. 有序链表公共部分 🌟
  2. 删除链表倒数第k个节点 🌟
  3. 删除中间或a/bs节点 🌟
  4. 反转链表 🌟
  5. 反转固定范围内链表 🌟
  6. 约瑟夫环的问题 🌟🌟🌟🌟
  7. 回文单链表 🌟🌟
  8. 左边小右边大,中间相等链表 🌟🌟
  9. 链表转数字,相加 🌟
  10. 链表相交 🌟🌟🌟
  11. 链表每k个节点反转 🌟🌟🌟
  12. 排序 🌟🌟🌟
  13. 只给出node,删除这个node,单链表 🌟

二叉树

  1. 二叉树各种节点 🌟🌟

  2. 输出树形图二叉树 🌟🌟🌟

  3. 序列化树,反序列 🌟

  4. Morris遍历树,空间复杂度为1 🌟🌟🌟

  5. 在二叉树中找到累加和为指定值的最长路径长度 🌟🌟🌟

  6. 找到二叉树中的最大搜索二叉子树 🌟🌟

  7. 找到二叉树中符合搜索二叉树条件的最大拓扑结构 🌟🌟🌟

  8. 打印出通level的节点 🌟🌟

  9. 判断是否是子树 🌟

  10. 判断是否是平衡二叉树 🌟

  11. 根据后序数组重建搜索二叉树 🌟🌟

  12. 判断一棵二叉树是否为搜索二叉树和完全二叉树 🌟🌟

  13. 根据有序数组重建平衡搜索二叉树,默认递增 🌟🌟

  14. 在二叉树中找到两个节点的最近公共祖先 🌟

  15. 二叉树节点间的最大距离问题 🌟

  16. 统计和生成所有不同的二叉树 🌟🌟

递归与动态规划

  1. 斐波那契数列 🌟
  2. 矩阵的最小路径和 🌟🌟
  3. 路径是否可达 🌟🌟
  4. 最少硬币数 🌟🌟🌟🌟

Leetcode

  1. 填充节点的下一个右侧节点
  2. 同构字符串
  3. 反转链表
  4. 有序数组的平方
  1. 数组交集

  2. 最长公共前缀

  3. 股票售卖问题

  4. 移动数组

  5. 删除数组指定元素

  6. 数组数组加1

  7. 数组数字之和等于某值

  8. N型翻转

  9. 删除倒N个节点

  10. 合并有序数组

  11. 环形链表

  12. 数组相加

  13. N阶梯子问题

  14. 数组中元素和值最大的连续子数组

  15. 最长的上升子序列

  16. 三角形的最小路径和

  17. 最短路径

  18. 三角形的最小路径和

  19. 小偷问题

  20. 翻转字符串

  21. 第一个不重复字符

  22. Sunday匹配

  23. 大数输出

  24. 回文字符串

  25. 字符串匹配,KMP

  26. 字符串倒置,kmp

  27. 最后一个单词

Leetcode

  1. 数组目标和
  2. 数组数字相加
  3. 最常无重复字符串
  4. 前K高频单词