小菲柱
小菲柱
全部文章
题解
个人笔记(5)
笔试练习(7)
面试整理(4)
归档
标签
去牛客网
登录
/
注册
小菲柱的博客
备战秋招~个人博客暂不更新
全部文章
/ 题解
(共177篇)
题解 | #滑动窗口的最大值#
思想很简单: 1. 构造出一个窗口(用deque,这里不用queue是因为queue没有迭代器不方便操作) 2. 找出第一个窗口的最大值,记录下来,并压入返回数组 3. 后续移除首元素,添加下一个元素构成新的窗口。如果前一个窗口的最大值是被移除的首元素则重新找最大值 4. 不然将前一...
滑动窗口
2022-07-02
0
333
题解 | #数组中只出现一次的两个数字#
两个相同的数字异或结果会抵消,0与任何数异或都等于该数本身。 如何将两个数异或的结果拆分成原来的两个数:找出两数某一个不同位,然后将原序列与其位相与,分出不同的两组 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返...
C++
哈希表
位运算
2022-06-23
0
290
题解 | #数组中出现次数超过一半的数字#
候选法 class Solution { public: int MoreThanHalfNum_Solution(vector<int> numbers) { int cnt = 0, cond = -1; // 候选法选出来的肯定是众数...
C++
2022-06-23
0
284
题解 | #两数之和#
利用两数互补和哈希查找的原理 class Solution { public: /** * * @param numbers int整型vector * @param target int整型 * @return int整型vector ...
C++
哈希表
2022-06-23
0
353
题解 | #数据流中的中位数#
使用插入排序保证每次插入后序列都是有序的。同时注意insert方法是在指定迭代器前方插入(而不是在当前迭代器位置插入)!!! class Solution { public: // 使用插入排序,每次插入之后都直接是有序序列 void Insert(int num) { ...
C++
数据流
2022-06-23
0
323
题解 | #在二叉树中找到两个节点的最近公共祖先#
没在状态,但还是需要保持一下手感 /** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ class Solution { public: i...
C++
二叉树
2022-05-22
0
352
题解 | #二叉搜索树的最近公共祖先#
越写越不会 /** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * TreeNode(int x) : val(x), left(nullptr), right(null...
C++
二叉树
二叉搜索树
2022-05-19
0
302
题解 | #判断是不是平衡二叉树#
递归一直是弱项 class Solution { public: bool IsBalanced_Solution(TreeNode* pRoot) { return deepth(pRoot) != -1; } private: int deepth(T...
C++
二叉树
递归
2022-05-19
0
249
题解 | #表达式求值#
中缀表达式求值:适合用递归 后缀表达式:适合用栈 写第二遍发现还是不会,逻辑理不清晰 class Solution { public: int solve(string s) { // 字符数字转整型;一组括号内计算的结果 int sum = 0, ans = 0...
C++
递归
2022-05-18
0
267
题解 | #寻找第K大#
有用例不通过,快排退化的时候不通过! 这里用一点小技巧防止快排退化。 class Solution { public: int findKth(vector<int> a, int n, int K) { return quick_sort(a, 0, a.siz...
C++
快速排序
分治
2022-05-18
0
383
首页
上一页
7
8
9
10
11
12
13
14
15
16
下一页
末页