牛牛想要一个面试
牛牛想要一个面试
全部文章
分类
归档
标签
去牛客网
登录
/
注册
牛牛想要一个面试的博客
全部文章
(共80篇)
题解 | #二叉搜索树与双向链表#
/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/ //递归调用...
2023-01-09
0
244
题解 | #二叉树中和为某一值的路径(一)#
1.思路:既然是检查从根到叶子有没有一条等于目标值的路径,那肯定需要从根节点遍历到叶子,我们可以在根节点每次往下一层的时候,将sum减去节点值,最后检查是否完整等于0. 而遍历的方法我们可以选取二叉树常用的递归前序遍历,因为每次进入一个子节点,更新sum值以后,相当于对子树查找有没有等于新目标值的路...
2023-01-09
0
316
题解 | #二叉树的最大深度#
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ class Solution { public: /** * * @...
2023-01-09
0
273
题解 | #按之字形顺序打印二叉树#
1.使用队列,遵从之前层次遍历的方法,当在偶数层时,翻转结果数组即可step 1:首先判断二叉树是否为空,空树没有打印结果。step 2:建立辅助队列,根节点首先进入队列。不管层次怎么访问,根节点一定是第一个,那它肯定排在队伍的最前面step 3:每次进入一层,统计队列中元素的个数。因为每当访问完一...
2023-01-09
0
222
题解 | #求二叉树的层序遍历#
step 1:首先判断二叉树是否为空,空树没有遍历结果。step 2:建立辅助队列,根节点首先进入队列。不管层次怎么访问,根节点一定是第一个,那它肯定排在队伍的最前面。step 3:每次进入一层,统计队列中元素的个数。因为每当访问完一层,下一层作为这一层的子节点,一定都加入队列,而再下一层还没有加入...
2023-01-09
0
268
题解 | #二叉树的后序遍历#
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {...
2023-01-08
0
201
题解 | #二叉树的中序遍历#
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {...
2023-01-08
0
254
题解 | #二叉树的前序遍历#
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {...
2023-01-08
0
230
题解 | #比较版本号#
1.双指针具体做法:step 1:利用两个指针表示字符串的下标,分别遍历两个字符串。step 2:每次截取点之前的数字字符组成数字,即在遇到一个点之前,直接取数字,加在前面数字乘10的后面。(因为int会溢出,这里采用long记录数字)step 3:然后比较两个数字大小,根据大小关系返回1或者-1,...
2023-01-07
0
284
题解 | #旋转数组的最小数字#
1.使用二分查找具体做法:step 1:双指针指向旋转后数组的首尾,作为区间端点。step 2:若是区间中点值大于区间右界值,则最小的数字一定在中点右边。step 3:若是区间中点值等于区间右界值,则是不容易分辨最小数字在哪半个区间,比如[1,1,1,0,1],应该逐个缩减右界。step 4:若是区...
2023-01-07
0
246
首页
上一页
1
2
3
4
5
6
7
8
下一页
末页