leetcode简略总结(主要自己看的)

198:打家劫舍(简单):使用动态规划,考虑某个位置的值是与前一个间隔一个位置的最大值相加,还是与间隔两个位置的值相加:
d[i]=max(d[i-2]+nums[i],d[i-3]+nums[i]);
maxv=maxv>d[i]?maxv:d[i];

338: 比特位计数(中等):动态规划,看了大佬们的解析,去掉最后一位的数字的1的个数加上判断最后一位是否为1,即re[i]=re[i>>1]+(i&1)。或者用re[i&(i-1)]+1,讲道理这个方法没看懂但是很神奇,
i&(i-1)这个可以判断i是否是2的幂。
回溯法:39,46,参考https://blog.csdn.net/wonner_/article/details/80373871

64:最小路径和(中等):动态规划,逆向思维思考

148:排序链表(中等),重要!!!使用归并排序

208: 实现 Trie (前缀树)*****定义一个节点拥有数组 links,表示26个字母哪一个是拥有连接

328: 奇偶链表,双指针,将奇数位置节点连接起来,偶位置节点连接起来,最后把这两个链表连接起来

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值