王清楚
王清楚
全部文章
题解
ACM(1)
PAT(3)
uva(1)
未归档(9)
归档
标签
去牛客网
登录
/
注册
王清楚的博客
全部文章
/ 题解
(共94篇)
【牛客题霸题解】子数组的最大累加和问题
来自专栏
如果我们知道了以每个位置结尾的子数组的最大累加和,里面最大的那个结果就是整个数组的子数组的最大累加和了。例:arr = [1, -2, 3, 5, -2, 6, -1]dp = [1, -1, 3, 8, 6, 12, 11]所以arr数组中子数组的最大累加和为12。 设数组dp中,dp[i]表示以...
2021-03-29
1
644
【牛客题霸题解】容器盛水问题
来自专栏
题目可以转化为求每个位置上面能装多少水比如题目中给出来的例子:左右两边边界(0和5位置)上是一定不会有水的,然后1位置上能装2格水,2位置上能装1格水,3位置上不能装水,4位置上能装2格水。所以对于这一个例子来说,一共能装5格水。那么我们就再来考虑一下,每个位置上面能装多少水怎么求对于位置 来说,...
2021-03-29
11
1139
【牛客题霸题解】合并有序链表
来自专栏
这道题目和合并有序数组得思路是基本上一致的。就是每次选两个链表中的较小值。注意当一个链表中的元素被选空了以后,剩下都要选择另一个链表里的元素 c++ class Solution { public: ListNode* mergeTwoLists(ListNode* l1, ListNod...
2021-03-27
0
632
【牛客题霸题解】数组中只出现一次的数(其它数出现k次)
来自专栏
利用二进制,记录一下每一位上1出现的次数。然后除k,如果余1的话就说明只出现了一次的数这一位是1。c++ class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * ...
2021-03-25
3
961
【牛客题霸题解】数组中只出现一次的两个数字
来自专栏
一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。先考虑另一个问题,一个整型数组里除了一个数字之外,其他的数字都出现了两次,那把所有的数据异或起来,异或的结果就是那一个数字。(因为出现过两次的数字异或起来就抵消了) 对于这个题来说,如果把数字全异或起来,最后...
2021-03-25
21
1309
【牛客题霸题解】删除链表中的倒数第n个结点
来自专栏
这道题目其实和输出链表的倒数第n个结点是基本上一致的。https://blog.nowcoder.net/n/4e57664df6974486bc352aa5a1e4613c和上一道题一样,定义快慢指针,快指针先走n步,然后快慢指针一起走,快指针走到空的时候慢指针正好在倒数第n个结点上。区别的地方只...
2021-03-24
5
803
【牛客题霸题解】链表中倒数第k个结点
来自专栏
解法: 定义两个指针,fast,slow指向链表的头结点。 fast指针先走k步,走的时候要注意判断一下链表的长度是否大于等于k。如果链表的长度也等于k的话,快指针走k步正好会走到空。如果在走第k步之前链表就指向空的话,说明链表长度小于k,直接返回空。 然后fast指针和slow指针一起走。当fa...
2021-03-23
8
1144
【牛客题霸题解】链表内指定区间反转
来自专栏
做这道题目之前可以先看一下 NC78 反转链表 https://blog.nowcoder.net/n/31e6abf3dd5d4970a03f7a483ca8e0ab先举一个例子:原链表:m = 2 ,n = 4反转后 观察可以发现我们需要进行的步骤有以下三条: 从 𝑚+1 到 𝑛 的这些...
2021-03-19
17
2141
【牛客题霸题解】反转链表
来自专栏
这里先举一个例子原链表:反转后观察可以发现,如果要进行反转链表的话,我们进行的操作是 第一个节点的next指针指向空 从第二个节点到最后一个节点,把每一个节点的next指针指向前一个节点。 把head指针指向最后一个节点 不过这里还有一个细节,我们来看第一步,把第一个节点的next指针指向空,但...
2021-03-16
10
1523
【题解】回文日期
题目:判断题目给的两个日期之间有多少个回文日期首先,我们可以发现,一年最多只可能有一个回文日期,所以判断给定的两个日期之间的年份有没有对应的回文日期就可以了。再注意一下题目给的两个日期所对应的年份。对应的回文日期要在时间区间内,即初始年对应的回文日期要在给定日期之后,结束年对应的回文日期在给定日期之...
2021-01-31
8
1113
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页