尹啟坊
尹啟坊
全部文章
分类
题解(17)
归档
标签
去牛客网
登录
/
注册
尹啟坊的博客
全部文章
(共17篇)
题解 | #二叉树的中序遍历#
面试的时候遇到这道题了,没写出来,发现还是有很讨厌的小细节的。。。 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param root TreeN...
栈
树
2021-08-08
0
352
题解 | #矩阵中的路径#
C++回溯的方法解决问题需要创建一个记录数组来记录回溯过程中访问的状态,防止回溯过程中重复访问某个元素需要注意的是,回溯返回时,要对状态值重置这道题的搜索路径是上下左右四个方向,并且可以从矩阵中的任一个位置开始回溯,所以要对矩阵中的每一个位置进行回溯,如果回溯中遇到了契合的字符串,则直接返回true...
dfs
回溯
2021-07-05
1
330
题解 | #整数与IP地址间的转换#
思路确实不难,转之前先转为二进制,但是这中间转换的小细节又多又恶心。。。 #include <bits/stdc++.h> using namespace std; // ipstr --> unsigned unsigned int str2uint (string ipst...
位运算
2021-07-05
1
416
题解 | #求最小公倍数#
a、b的最大公倍数 = a * b / a、b的最大公约数最大公约数用更相减损法来求,即让两个数相减,然后用差和减数的较大值和较小值更新被减数和减数,直到被减数和减数相等为止,此时被减数就是最大公约数。 #include <bits/stdc++.h> using namespace s...
数学
递归
2021-07-04
2
429
题解 | #购物单#
最长递增子序列问题的变形 对于数组的一个元素vec[i],以其为中心的合唱队列的长度等于 以其为结尾的前面最长递增子序列的长度 + 以其为开头的后边最长递减子序列的长度 - 1 其中,最长递减子序列的长度序列可将数组逆序后传入求最长递增子序列长度函数求出 #include ...
贪心思想
最长递增子序列
动态规划
2021-07-03
1
405
题解 | #字符串分隔#
include <bits/stdc++.h> using namespace std; void seg(string str) { // 字符串的分割,如何分割呢 int start = 0; while (start < str.size()) { ...
2021-07-03
0
287
题解 | #删除链表中重复的结点#
O(n)时间复杂度实现链表重复节点删除问题技巧:伪头结点、两层循环、判断是否找到了重复节点 class Solution { public: ListNode* deleteDuplication(ListNode* pHead) { // 1 2 3 3 4 4 5 ...
2021-07-01
1
318
题解 | #调整数组顺序使奇数位于偶数前面#
最简单的思路,创建一个奇数数组和偶数数组,分别用来接收遍历原数组过程中的奇数和偶数,遍历完后,再将偶数数组拼接到奇数数组尾部即可。这里的stl的vector有奇效。 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返...
数组
2021-06-21
0
385
题解 | #顺时针旋转矩阵#
顺时针旋转矩阵的题目利用顺时针旋转前后相应元素间的坐标关系来求解:即旋转前的纵坐标等于旋转后的横坐标,旋转前的横坐标+旋转后的纵坐标 = n - 1所以要求旋转后某位置的值,就可以先求出旋转前相应的坐标值,然后直接取值即可 class Solution { public: vector<...
数组旋转规律
2021-06-20
0
377
题解 | #链表的奇偶重排#
链表重排,这种题一定要画图,画着画着思路就出来了边界条件:如果链表为空,或链表只有一个结点,或只有两个结点,直接返回head;设置双指针,p指向奇数结点,q指向偶数结点,同时设置一个evenhead结点指向q,作为偶数链的头结点1)让奇数结点指向偶数结点的下一个结点,同时p指针后移;2)让偶数结点指...
双指针
2021-06-19
0
388
首页
上一页
1
2
下一页
末页