![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题
文章平均质量分 54
4tong
这个作者很懒,什么都没留下…
展开
-
NO.6 剑指Offer
剑指Offer第六天复杂链表的复制在这里使用哈希表来保存新旧节点的对应关系,然后在哈希表中更新next和random字段public class Solution { public RandomListNode Clone(RandomListNode pHead) { HashMap<RandomListNode,RandomListNode> map = new HashMap<>(); RandomListNode cur =原创 2021-08-07 23:02:12 · 60 阅读 · 0 评论 -
NO.5 剑指Offer
剑指Offer第5天刷题今天依旧是链表链表中环的入口节点1.判断这个链表有没有环:定义两个引用 fast 和 slow,让它们从这个链表的头结点开始遍历,fast 一次走两步,slow 一次走一步,如果这个链表有环,那么 fast 和 slow 势必会相遇。2.找到这个链表中环的入口节点:如果这个链表有环,fast 和 slow 在C点相遇,A、B之间的距离是x,B、C之间的距离是y,环的周长为c,那么 fast 走过的路径为 x+c+c-y,slow 走过的路径为 x+c-y。根据数学的知识原创 2021-08-06 22:43:28 · 61 阅读 · 0 评论 -
NO.4 剑指Offer
剑指Offer第4天刷题今天开始复习链表:翻转链表需要保留一个节点的前驱和后继,用cur来遍历节点,head就是它的前驱,curNext是它的后继public class Solution { public ListNode ReverseList(ListNode head) { if(head == null) return null; ListNode cur = head; ListNode curNext = cur.next原创 2021-08-05 23:52:41 · 98 阅读 · 0 评论 -
NO.3 剑指Offer
剑指Offer第三天刷题跳台阶类似昨天的斐波那契数列,今天用递归写一下:public class Solution { public int jumpFloor(int target) { if(target <= 2){ return target; } return jumpFloor(target-1) + jumpFloor(target-2); }}跳台阶扩展问题变态青蛙跳台阶问题:(动原创 2021-08-04 23:03:00 · 62 阅读 · 0 评论 -
NO.2剑指Offer
文章目录剑指Offer第二天刷题用两个栈实现队列旋转数组的最小数字斐波那契数列剑指Offer第二天刷题用两个栈实现队列描述用两个栈来实现一个队列,分别完成在队列尾部插入整数(push)和在队列头部删除整数(pop)的功能。 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。示例:输入:[“PSH1”,“PSH2”,“POP”,“POP”]返回:1,2解析:“PSH1”:代表将1插入队列尾部“PSH2”:代表将2插入队列尾部"POP“:代表删除一个元素,先进先出=原创 2021-08-04 00:15:19 · 115 阅读 · 0 评论 -
NO.1剑指Offer
文章目录剑指Offer第一天刷题二维数组中的查找替换空格从尾到头打印链表剑指Offer第一天刷题二维数组中的查找描述:在一个二维数组array中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]给定 target = 7,返回 true。给定 target = 3,返回原创 2021-08-02 19:48:02 · 78 阅读 · 0 评论