我和我
我和我
全部文章
分类
面试必刷TOP101(101)
题解(130)
归档
标签
去牛客网
登录
/
注册
我和我的博客
TA的专栏
30篇文章
1人订阅
面试必刷TOP101
30篇文章
521人学习
全部文章
(共148篇)
题解 | #二维数组中的查找#TOP18
来自专栏
思路: 1.二分法,从矩阵右上角开始,如果这个数比target大,那么target位于该数下面,行数向下偏移,即增加。反之如果小,那说明这个数在当前数的左边,列数减小,即列数减1 2.注意行数和列数不要搞错了,矩阵行数等于数组array.length,列数等于array[0].length ...
Java
2022-06-29
0
287
题解 | #二分查找-I#TOP17
来自专栏
思路: 1.一分为二,[0,length -1] 主要是判断条件需要确定清楚。如果 start < end, 那么出现了 start = end情况,怎么处理?例如 end = mid -1 ,既有可能mid - 1 == start,这时候这个数就是target咋整,所以需要加上 start...
Java
2022-06-29
0
347
题解 | #删除有序链表中重复的元素-II#TOP16
来自专栏
思路: 1.和TOP 15一样,找到当前节点,利用while循环删除后面的节点。也就是当前重复节点后面肯定是一个非重复节点了 2.再记录pre前一个节点,当当前节点是重复节点是,直接pre的next节点指向已经删除重复节点后的当前节点的下一个节点。如果当前节点不是重复节点,每次pre节点向后偏移即可...
Java
2022-06-28
0
299
题解 | #删除有序链表中重复的元素-I#TOP15
来自专栏
思路: 1.对于当前节点,利用while循环删掉后面值和他相等的节点即可 /* * public class ListNode { * int val; * ListNode next = null; * } */ public class Solution { /**...
Java
2022-06-28
0
266
题解 | #链表的奇偶重排#TOP14
来自专栏
思路: 1.序号 偶数 &1 == 0 ,技术 &1 == 1,利用count 计数,遍历两次还好 2.做完后,一直编译不过,特么编译器提示p1.value,实际是p1.val, 牛客网编译器的提示这个能不能改一下 /* * public class ListNode { * ...
Java
2022-06-27
0
264
题解 | #判断一个链表是否为回文结构#TOP13
来自专栏
思路: 1.链表一分为二,快慢指针,slow和fast,fast不为空时,说明是元素为奇数个,slow再次指向下一个节点 fast为空,说明元素是偶数个,slow就是后半节点的头节点 2.比较两个链表元素值是否相等极客 3.注意,在快慢指针while循环中,为什么一定要先fast = fast.ne...
Java
2022-06-27
0
237
题解 | #单链表的排序#TOP12
来自专栏
思路: 1.题目是O(Nlog(n))时间负责度,当然我们第一眼可能想到,直接用辅助数组排序,然后将辅助数组辅助到链表上,可以做到数组时间O(Nlog(n)),但是数组空间O(N),题目没说,也是可以的 2.用归并排序,自顶向下,时间复杂度O(Nlog(N)),无空间消耗,拆分后就是合并两个有序的...
Java
2022-06-26
0
352
题解 | #链表相加(二)#TOP11
来自专栏
思路: 1.两数相加肯定是先个位相加,然后进位 2.反转链表,链表头就是个位数字了,然后相加,相加后,商的值就是当前节点值,余数参数下一个节点计算进位。(因为可能最后一个节点是0,所以反转后的到的节点,如果头节点是0的话,就要去掉。看你怎么写了,因为在所有节点计算完后,余数可能为0,也可能非0,需要...
Java
2022-06-26
0
268
题解 | #两个链表的第一个公共结点#TOP10
来自专栏
思路: 差异化 a + b = b + a p1 先到达节点终点,然后将p1 放到p2的头位置,有公共节点,那说明第二次,最后都能到达最后的节点。如果有复用的,重复的节点,那必须是一样的,第一次相等的肯定是就是入环点咯 public class ListNode { int val; ...
Java
2022-06-24
0
377
题解 | #删除链表的倒数第n个节点#TOP9
来自专栏
思路: 1.首先当只有一个节点时,n=1 ,那删除后就是空节点 2.还有当n的值刚好是头节点,例如倒数第3个节点,而节点长度为3,这种就是返回head.next了 3.其他情况,我们将slow指向到 要删除节点的前一个节点,那怎么才能指到呢?我们用fast节点先指向头节点,然后偏移 n - 1 个节...
Java
2022-06-24
0
521
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页