LourisXu
LourisXu
全部文章
分类
题解(66)
归档
标签
去牛客网
登录
/
注册
LourisXu的博客
全部文章
(共66篇)
题解 | #不相邻最大子序列和#
打家劫舍题 设dp[i]为以i为结尾的目标值 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 计算 * @param n int整型 数组的长度 * @para...
C++
DP
2021-08-16
0
437
题解 | #最长重复子串 -- 字符串哈希#
字符串哈希 这题与 LeetCode 1044 最长重复子串 类似,不同的是,这里的子串的首尾相连,那么根据力扣这题的思路,可以计算前后长度为L的[i, i + L - 1]和[i + L, i + 2 * L - 1]的字符串哈希值,然后判断这个哈希值是否相等,如果相等说明,存在;时间复杂度:,题...
C++
字符串
滑窗
字符串哈希
2021-08-16
1
703
题解 | #找到搜索二叉树中两个错误的节点#
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ class Solution { public: /** * ...
C++
递归
2021-08-14
0
434
题解 | #股票交易的最大收益(二)#
dp class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 两次交易所能获得的最大收益 * @param prices int整型vector 股票每一天的价格 * ...
C++
DP
2021-08-13
0
507
题解 | #判断t1树中是否有与t2树拓扑结构完全相同的子树#
递归容我骂两句,智障拓扑结构完全相同需要值也相同??? /** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ class Soluti...
C++
递归
2021-08-12
1
747
题解 | #通配符匹配#
动规设dp[i][j]表示s[:i]和p[:j]匹配,状态转移方程:(1)p[j] == '', dp[i][j] = dp[i - 1][j] || dp[i - 1][j - 1] || dp[i][j - 1]; //匹配n次或1次或0次(2)p[j] == '?' || s[i] == p[...
C++
DP
2021-08-12
0
446
题解 | #字典树的实现#
字典树模板(1)首先定义节点:cnt: 当前字母在前缀出现的次数isWord: 当前字母作为word结尾的次数next[26]: 字母范围 struct Node{ int cnt; int isWord; Node* next[26]; ...
C++
字典树
链表
2021-08-10
0
469
题解 | #随时找到数据流的中位数#
大/小顶堆 class MedianHolder{ private: priority_queue<int, vector<int>, less<int>> maxPq; //放小的一半,奇数个数时,比minPq多一个元素 priority_que...
C++
堆
2021-08-09
0
460
题解 | #正则表达式匹配#
动规 class Solution { public: bool isMatch(const string s, const string p, int i, int j){ if(p[j - 1] == '.') return true; return s[...
C++
DP
2021-08-08
0
423
题解 | #数组中的逆序对#
归并排序时间复杂度:空间复杂度: class Solution { public: const int MOD = 1e9 + 7; int ans = 0; void merge(vector<int>& data, int left, int mid,...
C++
排序
2021-08-08
0
448
首页
上一页
1
2
3
4
5
6
7
下一页
末页