美文网首页
LeetCode 刷题笔记1 (方法和数组)

LeetCode 刷题笔记1 (方法和数组)

作者: Grit_王祎 | 来源:发表于2020-01-15 00:21 被阅读0次
  • 有言在先

1.懵逼的时候怎么办

  • 暴力破解?
  • 从最基本问题开始解决,然后向后思考找最近重复子问题,泛化(递归?动态规划?)因为计算机只能做if else for loop recursion 这些重复问题

2. 刷题最大误区

  • 只刷一遍不总结,不看大神的解法

3. 优化算法问题的核心思想

  • 让问题的思考提升维度,即:用空间换时间

  • 数组问题总结

  1. 引入 j 来记录需要的条件(283 移动零元素问题)
  2. 双指针!!!,基本都是这种方法,从外向内扫(最大容器问题)
  3. 一位数组枚举模板 必须形成肌肉记忆
for (int i = 0;i<numsize-1;i++){
    for (int j = i+1;j<numsize;j++)
}
  1. 为了查找方便,可以用哈希表来记录数组元素
  • 链表问题总结

  1. 链表问题大部分都是改变cur.next的指向,类似于穿针引线
  2. 虚设一个头结点用来解=解决头结点比较特殊的情况(eg.删除链表中的重复元素)
  3. 特殊问题才需要改变节点值
  4. 双索引技巧在链表中同样适用(eg.删除链表倒数第k个元素)

相关文章

网友评论

      本文标题:LeetCode 刷题笔记1 (方法和数组)

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