刷题笔记

好久没写刷题笔记了,简单小结一下这一周多的结果:目前已刷63道,平均一天4-5道,主刷easy题。tree部分的easy做了一大半,hash table的easy做了一半左右,linkedlist部分easy题基本做完,现在再按题号顺序跳着做。基本每道题都在leetcode自带的note上做了笔记,并从前天开始记录每天刷题进度,所以这个博客就有点多余了。应该不会再像之前那样把每道题都po上来,但是会用它来做一段时间的刷题总结或者记录一些需要掌握的知识点之类的。
需要掌握的一些基本操作(想到哪写到哪):
1. 把list转成数组
2. 把string转成字符数组: str.toCharArray()
3. 把字符数组转成string: String.valueOf(ch)
4. 遍历一个string里的每个substring(brute force的算法需要用到)
5. 把integer反转(考虑溢出问题)
6. 由5引申来的:判断一个数是否palindromic 
7. 判断两数组是否相同: Arrays.equals(a1, a2)
8. 判断两字符串是否相同: str1.equals(str2)
9. 判断字符串是否为空: str.isEmpty()
10. 求链表长度
11. 找到index为i的节点(删除,插入)
12. 删除某节点的两个方法:
    1.找前一个节点使prev.next = prev.next.next;注意:当需要删除第一个节点时可以在        linkedlist前加一个dummynode
    2.改变需要删除的节点的值并删除下一个:del.val = del.next.val; del.next = del.next.next;注意:这种方法不能删除最后一个节点

截止01/18/2019已经刷了119道了,开学之后平均一天两道且多为hard。昨天做了321、Create Maximum Number,总结一下需要记住的知识:
1. 从一个数组中选出k个数,且保持它们在数组中的相对位置所能组成最大的数
2. 合并两个数组,且保持它们在各自数组中的相对位置所能组成的最大的数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值