王清楚
王清楚
全部文章
题解
ACM(1)
PAT(3)
uva(1)
未归档(9)
归档
标签
去牛客网
登录
/
注册
王清楚的博客
全部文章
/ 题解
(共94篇)
【牛客题霸题解】螺旋矩阵
来自专栏
先列举几种情况观察一下,思路其实可以归纳为从起点(0,0)开始先往左走,没有办法往左走了(到了边界或者是左边的格子已经走过了)就往下走,不能往下走了以后就往右走,不能往右走了以后就往上走,不能往上走了以后就往左走。直到有一个格子四个方向都不能走了,就结束循环。所以我们设立一个visit数组,visi...
2021-04-13
0
717
【牛客题霸题解】删除有序链表中重复出现的元素
来自专栏
从链表的第一个节点开始遍历,如果当前的结点的值等于下一个结点的值,就说明这个结点是要删除的。然后看一下后面有多少个结点等于这个值,一起删除掉。因为第一个结点也有可能被删除,所以在第一个结点前加一个头节点。图中深色的部分需要删除c++ class Solution { public: List...
2021-04-12
0
613
【牛客题霸题解】二叉树根节点到叶子节点的所有路径和
来自专栏
c++ class Solution { public: void bfs(TreeNode* root,int add,int &ans) { if(root==NULL){return;} if(root->left==NULL &a...
2021-04-12
0
879
【牛客题霸题解】大数相加
来自专栏
先反转,再相加,过程中记录一下进位c++ class Solution { public: string solve(string s, string t) { reverse(s.begin(),s.end()); reverse(t.begin(),t.e...
2021-04-12
0
684
【牛客题霸题解】汉诺塔问题
来自专栏
把n个盘子从Left 借助 Mid,移动到Right柱子上可以分为以下三步: 把n-1个盘子从Left 借助 Right,移动到Mid柱子上 把剩下最大的那一个盘子从Left移动到 Right柱子上 把n-1个盘子从Mid 借助 Left,移动到,Right柱子上 我们定义函数 void Han...
2021-04-10
11
925
【牛客题霸题解】链表相加
来自专栏
先把链表进行反转,然后再相加反转链表的步骤参考NC78https://blog.nowcoder.net/n/31e6abf3dd5d4970a03f7a483ca8e0ab相加的时候每一位上的值等于两个链表那位上的值相加再加上之前的进位%10 c++ class Solution { public...
2021-04-10
1
594
【牛客题霸题解】阶乘末尾0的数量
来自专栏
观察一下10以内的数字互相乘,会发现,只有 相乘会产生0,而且 ,...所以我们只需要看一下 以内 能拆出多少对 然后我们可以发现,有5因子的数比有2因子的数要少,所以我们就看能拆出来多少5就可以了,因为肯定能有足够数量的因子2来匹配。 所以阶乘末尾0的数量就是 中能拆出来的5的数量。...
2021-04-08
27
1404
【牛客题霸题解】最大公约数
来自专栏
我们用辗转相除法(又称欧几里得算法)来计算两个数的最大公约数 (Greatest Common Divisor)所以下文用gcd(a,b)表示a和b的最大公约数。 先举一个例子: 假如需要求 434 和 652 的最大公约数,用欧几里得算法,是这样进行的: 434 / 652 = 0 (余 434)...
Python3
2021-04-01
50
1619
【牛客题霸题解】不相邻最大子序列和
来自专栏
表示区间 的不相邻最大子序列和,那 就是我们要找的答案了。如果取 的话, 就不能取了,这个情况下 的不相邻最大子序列和 为 如果不取 的话 , 的不相邻最大子序列和 为 所以 c++ class Solution { public: long long subsequence(i...
2021-03-30
6
897
【牛客题霸题解】删除有序链表中重复的元素
来自专栏
因为链表本身有序,所以可以从第二个结点看到最后一个结点,如果这个结点和前一个结点相同,就删掉这个结点。因为给出的链表是单链表,所以前一个结点需要我们自己记录一下。c++ class Solution { public: ListNode* deleteDuplicates(ListNode*...
2021-03-29
0
776
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页