随笔分类 -  力扣

摘要:题目描述 实现一颗字典树 跳转链接 Jump To Problem Jump To Solution 代码 import java.util.ArrayList; import java.util.Iterator; class HASet<K> implements Iterable<K> { @ 阅读全文
posted @ 2022-05-10 23:22 墨鳌 阅读(46) 评论(0) 推荐(0)
摘要:解题思路 思路显而易见,计算几何求凸包 Orz大佬,这Python代码绝绝子 @z1m 补充 2022/4/23 补充Graham算法 Andrew算法 C++版本 class Solution { public: vector<vector<int>> outerTrees(vector<vect 阅读全文
posted @ 2022-04-23 13:02 墨鳌 阅读(154) 评论(0) 推荐(0)
摘要:class Solution { public: int bestRotation(vector<int>& A) { int N = A.size(); vector<int> mark(N, 0); for (int i = 0; i < N; ++i) { int L = (i + 1) % 阅读全文
posted @ 2022-03-09 09:48 墨鳌 阅读(42) 评论(0) 推荐(0)
摘要:class Solution { public: bool isMatch(string s, string p) { int m = s.size(); int n = p.size(); auto matches = [&](int i, int j) { if (i == 0) { retur 阅读全文
posted @ 2022-03-09 09:22 墨鳌 阅读(52) 评论(0) 推荐(0)
摘要:组合数学 \(O(N\cdot M)\) class Solution { public: int f[10][10]; int C(int n, int m) { if (n == m || m == 0) return 1; return f[n][m] = C(n - 1, m - 1) + 阅读全文
posted @ 2022-03-08 22:26 墨鳌 阅读(68) 评论(0) 推荐(0)
摘要:class Solution { public: bool isSubsequence(string s, string t) { int n = s.length(), m = t.length(); int i = 0, j = 0; while (i < n && j < m) { if (s 阅读全文
posted @ 2022-03-08 19:42 墨鳌 阅读(33) 评论(0) 推荐(0)
摘要:解题思路 精彩 O(1) class Solution { public: bool isPalindrome(ListNode* head) { if (head == nullptr) { return true; } ListNode* firstHalfEnd = endOfFirstHal 阅读全文
posted @ 2022-03-08 19:26 墨鳌 阅读(44) 评论(0) 推荐(0)
摘要:题目链接 题解链接 解题思路 简单 01 枚举 位运算基础操作 class Solution { private: bool isValid(string s) { int count = 0; for (char &c: s) { if (c == '(')count++; else count- 阅读全文
posted @ 2022-02-26 17:26 墨鳌 阅读(36) 评论(0) 推荐(0)
摘要:题目链接 题解链接 解题思路 引入神经网络概念: 激活函数之一:ReLU(x) \(ReLU(x)=\begin{cases}0\ (x\leq0)\\x\ (x>0)\end{cases}\iff ReLU(x)=\max(x,0)\) 假设状态 \(dp(i)\) 为: 当前 \(i\) 个元素 阅读全文
posted @ 2022-02-17 14:07 墨鳌 阅读(33) 评论(0) 推荐(0)
摘要:题目链接 题解链接 解题思路 卡特兰数 代码 // 1 2 5 14 卡特兰数从第二项开始 class Solution { public: unordered_map<int,int>C; int Catalan(int n,int mod){ if(n<=1)return C[n]=1; if( 阅读全文
posted @ 2022-02-16 18:55 墨鳌 阅读(32) 评论(0) 推荐(0)
摘要:题目链接 题解链接 基础: 二分 先从最简单的思路开始 首先,题目满足可二分性 也就是说,当可以构造出 x 个 "balloon" 串 必然,可以构造出 x-1 个 "balloon" 串 于是,二分答案 复杂度 时间复杂度: \(O(Nlog(N))\) 空间复杂度: \(O(1)\) 代码 cl 阅读全文
posted @ 2022-02-13 11:36 墨鳌 阅读(36) 评论(0) 推荐(0)
摘要:题目链接 题解链接 方法一:冒泡排序 思路,略 复杂度 空间复杂度: \(O(1)\) 时间复杂度: \(O(N^2)\) 代码 class Solution { public: void sortColors(vector<int>& nums) { for(auto x=begin(nums); 阅读全文
posted @ 2022-02-10 12:24 墨鳌 阅读(57) 评论(0) 推荐(0)
摘要:题目链接 题解链接 题外话 无意间在评论区发现了原来是 125周赛题 所以晚上补充一下,他山之石,可以攻玉, @bigelephant29 解题思路 每一个灯(坐标),有五个属性: 行 (横坐标 x ) 列 (纵坐标 y ) 撇 (直线 y=x+t \(\Longrightarrow\) 记录 x- 阅读全文
posted @ 2022-02-09 13:50 墨鳌 阅读(41) 评论(0) 推荐(0)
摘要:题目链接 题解链接 解题思路 经典约瑟夫环 plus 经典记忆化搜索技巧 \(f(n,m)=\begin{cases}0 & (n=0)\\ [f(n-1,m)+m]\%n&(n>0)\end{cases}\) 代码 class Solution { public: struct pair_hash 阅读全文
posted @ 2022-02-09 13:48 墨鳌 阅读(39) 评论(0) 推荐(0)
摘要:题目链接 题解链接 解题思路 用 \(n\) 个🎲投掷出点数和为 \(x\) 的概率为 \(p(n,x)\) \(p(n,x)=\frac{1}{6}\cdot\underset{{i=1}}{\overset{6}{\sum}}p(n-1,x-i)\) 初始条件为: \(p(0,0)=1\) 复 阅读全文
posted @ 2022-02-09 13:44 墨鳌 阅读(60) 评论(0) 推荐(0)
摘要:题目链接 力扣题解链接 解题思路 不要抖机灵!不要抖机灵!不要抖机灵! 重要的事情说三遍 先找,题源:《程序员面试金典(第六版)》 然后翻评论区 @joswxe 站在巨人的肩膀上 核心思想就是倍增 乘法的本质是:加法 除法的本质是:减法 每次只需要把 乘数 or 除数 按照二进制拆开考虑 即可优化运 阅读全文
posted @ 2022-02-08 21:14 墨鳌 阅读(47) 评论(0) 推荐(0)
摘要:题目链接 力扣题解链接 解题思路 少用乘法,到不用乘法 思路〇可以忽略, 就图一乐 思路〇:计算空间开销 申请一个大小为$a×b$的数组 计算其大小,并返回 class Solution { public: int multiply(int A, int B) { bool a[A][B]; ret 阅读全文
posted @ 2022-02-08 16:54 墨鳌 阅读(63) 评论(0) 推荐(0)