刷Leetcode收获的关键知识与相对应的算法题索引(持续更新中)

  1. set容器不允许有相同键值,可利用此来判断是否有重复元素(map同理)
    Leetcode 217:存在重复元素

  2. 排序法可对容器按升序或降序排序可优化解决很多问题
    Leetcode 217:存在重复元素

  3. 解决在一个数组中寻找只出现一次的数字(其他数字均出现两次),可用异或黑科技
    Leetcode 136: 只出现一次的数字

  4. 单层循环双指针:快慢指针法。每循环一次执行加1操作的是快指针,在每一次循环只有满足条件才执行加1操作的是慢指针。
    Leetcode 283:移动零

  5. set、map等都可以定义数组容器,省去了需要连续定义多个容器的问题
    Leetcode 36:有效的数独

  6. ArrayList、LinkedList、HashMap三者各种操作的运算速度比较与总结
    Leetcode 242:有效的字母异位词

  7. 善于用库中自带的函数 isalnum(char c)和 tolower(char c)等简化代码
    Leetcode 125:验证回文串

  8. 字符串匹配的自带库函数以及KMP算法
    Leetcode 28:实现strStr

  9. 递归思想
    Leetcode 38:报数

  10. 删除链表节点之替身攻击法
    Leetcode 237:删除链表中的节点

  11. 关于链表的递归调用学习
    Leetcode 206:反转链表

  12. 链表回文可利用stack先入后出思想以及利用快慢指针可找到链表中点
    Leetcode 234:回文链表

  13. 应用二叉树的两种遍历方法解决求最大深度问题
    Leetcode 104:二叉树的最大深度

  14. 如何用递归来验证二叉搜索树(比较大小)以及递归之节点继承法
    Leetcode 98:验证二叉搜索树

  15. 如何验证二叉树对称性(如何找到二叉树某一节点的对称节点)
    Leetcode101:对称二叉树

  16. 如何用队列进行二叉树的层次遍历以及加上level的前序遍历解决二叉树的层次遍历问题(广度优先)
    Leetcode 102:二叉树的层次遍历

  17. 用二分查找的思想创建二叉搜索树
    Leetcode 108:将有序数组转换为二叉搜索树

  18. 灵活使用vector自带的api
    Leetcode 88:合并两个有序数组

发布了23 篇原创文章 · 获赞 9 · 访问量 1425

猜你喜欢

转载自blog.csdn.net/IcdKnight/article/details/94738018