- 博客(60)
- 收藏
- 关注
原创 简易DHCP服务器
DHCP服务器的功能是为每一个MAC地址分配唯一的IP地址。现假设:分配的IP地址范围从 192.168.0.0 到 192.168.0.255 总。可用地址(以点分十进制表示)。
2023-05-19 18:39:35
758
原创 【python3】统计值等于子树平均值的节点数
题目描述给你一棵二叉树的根节点 root ,找出并返回满足要求的节点数,要求节点的值等于其 子树 中值的 平均值 。注意:n 个元素的平均值可以由 n 个元素 求和 然后再除以 n ,并 向下舍入 到最近的整数。root 的 子树 由 root 和它的所有后代组成。Coding# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right..
2022-05-28 09:52:13
222
原创 [python3] 字符串中最大的 3 位相同数字
题目描述给你一个字符串 num ,表示一个大整数。如果一个整数满足下述所有条件,则认为该整数是一个 优质整数 :该整数是 num 的一个长度为 3 的 子字符串 。该整数由唯一一个数字重复 3 次组成。以字符串形式返回 最大的优质整数 。如果不存在满足要求的整数,则返回一个空字符串 "" 。注意:子字符串 是字符串中的一个连续字符序列。num 或优质整数中可能存在 前导零 。Coding1from collections import defaultdictclass So
2022-05-27 11:43:06
166
原创 [单调栈+前缀和的前缀和] 巫师的总力量和
题目描述作为国王的统治者,你有一支巫师军队听你指挥。给你一个下标从 0 开始的整数数组 strength ,其中 strength[i] 表示第 i 位巫师的力量值。对于连续的一组巫师(也就是这些巫师的力量值是 strength 的 子数组),总力量 定义为以下两个值的 乘积 :巫师中 最弱的能力值。组中所有巫师的个人力量值 之和。请你返回 所有巫师组的 总力量之和。由于答案可能很大,请将答案对109 + 7取余后返回。子数组 是一个数组里 非空 连续子序列。代码...
2022-05-24 15:04:04
204
原创 【多个区间合并问题】统计区间中的整数数目
问题描述给你区间的 空 集,请你设计并实现满足要求的数据结构:新增:添加一个区间到这个区间集合中。统计:计算出现在 至少一个 区间中的整数个数。实现 CountIntervals 类:CountIntervals() 使用区间的空集初始化对象void add(int left, int right) 添加区间 [left, right] 到区间集合之中。int count() 返回出现在 至少一个 区间中的整数个数。注意:区间 [left, right] 表示满足 left <=
2022-05-22 14:14:47
187
原创 [累加和+二分]摘水果
题目描述在一个无限的 x 坐标轴上,有许多水果分布在其中某些位置。给你一个二维整数数组 fruits ,其中 fruits[i] = [positioni, amounti] 表示共有 amounti 个水果放置在 positioni 上。fruits 已经按 positioni 升序排列 ,每个 positioni 互不相同 。另给你两个整数 startPos 和 k 。最初,你位于 startPos 。从任何位置,你可以选择 向左或者向右 走。在 x 轴上每移动 一个单位 ,就记作 一步 。你总
2022-05-08 15:11:12
279
原创 哈夫曼树template
class Node //代表各个字符的结点{public: int data; string code; shared_ptr<Node> leftChild,rightChild; Node():leftChild(nullptr),rightChild(nullptr),code(""){}};template<typename T>class Greater{public: bool operator()(T a, T b){.
2022-02-27 11:14:26
133
原创 [string模拟]判断两个IP是否属于同一子网
题目描述子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。子网掩码与IP地址结构相同,是32位二进制数,其中网络号部分全为“1”和主机号部分全为“0”。利用子网掩码可以判断两台主机是否中同一子网中。若两台主机的IP地址分别与它们的子网掩码相“与”后的结果相同,则说明这两台主机在同一子网中。示例:IP地址 192.168.0.1子网掩码 255.255.255.0转化为二进制进行运算:IP地址 11000000.10101000.00000000.000...
2022-02-24 11:03:47
121
原创 [大模拟]登机牌条码
题目描述PDF417 码组成的基本元素是码元(Module),所有的码元都是等大的矩形,填充有黑色或白色。码元先组成行,若干行堆叠组成整个 PDF417 码。每一行中,每 17 个码元表示一个码字(Code word)。码字是 PDF417 编码中的最小数据单位。每个码字图案中,有交替排列的四个黑色矩形和四个白色矩形,这便是 “417” 的由来。每行开始和结尾有固定的起始和中止图案。与他们相邻的是行左侧和右侧标志,表示行号、行内码字个数等信息。中间的是有效数据区。编码的步骤是:先按照编码规则,将被编码的
2022-02-23 15:37:18
519
原创 【分组背包-依赖问题】HJ16 购物单
题目描述王强今天很开心,公司发给N元的年终奖。王强决定把年终奖用于购物,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表就是一些主件与附件的例子:主件 附件 电脑 打印机,扫描仪 书柜 图书 书桌 台灯,文具 工作椅 无 如果要买归类为附件的物品,必须先买该附件所属的主件,且每件物品只能购买一次。每个主件可以有0个、1个或2个附件。附件不再有从属于自己的附件。王强想买的东西很多,为了不超出预算,他把每件物品规定了一个重要度...
2022-02-22 13:24:34
132
原创 [非重复型打乱匹配问题+状压]Count Words Obtained After Adding a Letter
DescriptionYou are given two 0-indexed arrays of strings startWords and targetWords. Each string consists of lowercase English letters only.For each string in targetWords, check if it is possible to choose a string from startWords and perform a convers
2022-01-26 19:46:03
358
原创 [欧拉路]合法重新排列数对
题目描述给你一个下标从 0 开始的二维整数数组 pairs ,其中 pairs[i] = [starti, endi] 。如果 pairs 的一个重新排列,满足对每一个下标 i ( 1 <= i < pairs.length )都有 endi-1 == starti ,那么我们就认为这个重新排列是 pairs 的一个 合法重新排列 。请你返回 任意一个 pairs 的合法重新排列。注意:数据保证至少存在一个 pairs 的合法重新排列。思路分析入度为2时,从出度为1的结点开始
2022-01-11 14:31:35
353
原创 [拓扑排序+基环内向树+动态规划]参加会议的最多员工数
题目描述一个公司准备组织一场会议,邀请名单上有 n 位员工。公司准备了一张 圆形 的桌子,可以坐下 任意数目 的员工。员工编号为 0 到 n - 1 。每位员工都有一位 喜欢 的员工,每位员工 当且仅当 他被安排在喜欢员工的旁边,他才会参加会议。每位员工喜欢的员工 不会 是他自己。给你一个下标从 0 开始的整数数组 favorite ,其中 favorite[i] 表示第 i 位员工喜欢的员工。请你返回参加会议的 最多员工数目 。思路分析 拓扑排序里利用没有入队的元素——剩余的元素一定
2022-01-06 15:48:36
490
原创 [双指针]还原原数组
题目描述Alice 有一个下标从 0 开始的数组 arr ,由 n 个正整数组成。她会选择一个任意的 正整数 k 并按下述方式创建两个下标从 0 开始的新整数数组 lower 和 higher :对每个满足 0 <= i < n 的下标 i ,lower[i] = arr[i] - k对每个满足 0 <= i < n 的下标 i ,higher[i] = arr[i] + k不幸地是,Alice 丢失了全部三个数组。但是,她记住了在数组 lower 和 higher 中
2021-12-30 16:46:38
1101
原创 相同元素的间隔之和
Tag前缀和、Math题目描述给你一个下标从 0 开始、由 n 个整数组成的数组 arr 。arr 中两个元素的 间隔 定义为它们下标之间的 绝对差 。更正式地,arr[i] 和 arr[j] 之间的间隔是 |i - j| 。返回一个长度为 n 的数组 intervals ,其中 intervals[i] 是 arr[i] 和 arr 中每个相同元素(与 arr[i] 的值相同)的 间隔之和 。注意:|x| 是 x 的绝对值。思路分析首先要自己抽象数学公式 对绝对值求和
2021-12-30 11:39:42
484
原创 非连续递增子区间元素个数——使数组 K 递增的最少操作次数
题目描述给你一个下标从 0开始包含 n个正整数的数组arr,和一个正整数k。如果对于每个满足k <= i <= n-1的下标i,都有arr[i-k] <= arr[i],那么我们称arr是 K递增 的。比方说,arr = [4, 1, 5, 2, 6, 2]对于k = 2是 K 递增的,因为:arr[0] <= arr[2] (4 <= 5)arr[1] <= arr[3] (1 <= 2)arr[2] <...
2021-12-28 16:09:20
478
原创 使所有区间的异或结果为零
题目描述给你一个整数数组 nums 和一个整数 k 。区间 [left, right](left <= right)的 异或结果 是对下标位于left 和 right(包括 left 和 right )之间所有元素进行 XOR 运算的结果:nums[left] XOR nums[left+1] XOR ... XOR nums[right] 。返回数组中 要更改的最小元素数 ,以使所有长度为 k 的区间异或结果等于零。思路分析分组背包:按照区间长度为k的求模来分为k个.
2021-12-22 19:26:01
370
原创 [前缀和+二分] 2106.摘苹果
题目在一个无限的 x 坐标轴上,有许多水果分布在其中某些位置。给你一个二维整数数组 fruits ,其中 fruits[i] = [positioni, amounti] 表示共有 amounti 个水果放置在 positioni 上。fruits 已经按 positioni 升序排列 ,每个 positioni 互不相同 。另给你两个整数 startPos 和 k 。最初,你位于 startPos 。从任何位置,你可以选择 向左或者向右 走。在 x 轴上每移动 一个单位 ,就记作 一步 。你总共可
2021-12-22 11:00:33
223
原创 从二叉树一个节点到另一个节点每一步的方向
题目描述给你一棵 二叉树的根节点root,这棵二叉树总共有n个节点。每个节点的值为1到n中的一个整数,且互不相同。给你一个整数startValue,表示起点节点 s的值,和另一个不同的整数destValue,表示终点节点t的值。请找到从节点s到节点 t的 最短路径,并以字符串的形式返回每一步的方向。每一步用 大写字母'L','R'和'U'分别表示一种方向:'L'表示从一个节点前往它的 左孩子节点。'R'表示从一个节点前往它的 右孩子节...
2021-12-08 13:52:13
571
原创 找出知晓秘密的所有专家
待优化,一直超时。。。题目描述给你一个整数 n ,表示有 n 个专家从 0 到 n - 1 编号。另外给你一个下标从 0 开始的二维整数数组 meetings ,其中 meetings[i] = [xi, yi, timei] 表示专家 xi 和专家 yi 在时间 timei 要开一场会。一个专家可以同时参加 多场会议 。最后,给你一个整数 firstPerson 。专家 0 有一个 秘密 ,最初,他在时间0 将这个秘密分享给了专家 firstPerson 。接着,这个秘密会在每次有知晓这个秘.
2021-12-01 14:11:41
307
原创 所有子字符串中的元音
题目描述给你一个字符串 word ,返回 word 的所有子字符串中 元音的总数 ,元音是指 'a'、'e'、'i'、'o' 和 'u' 。子字符串 是字符串中一个连续(非空)的字符序列。注意:由于对 word 长度的限制比较宽松,答案可能超过有符号 32 位整数的范围。计算时需当心。思路分析带有前缀和的思想,记录以每个当前字符为结尾的所有子字符串的元音个数(累加的),即prevValidCharNum + i + 1 又有dp的思想Source codeclass So.
2021-11-19 14:47:45
235
原创 最大化一张图中的路径价值
题目描述给你一张 无向图,图中有 n个节点,节点编号从 0到 n - 1(都包括)。同时给你一个下标从 0开始的整数数组values,其中values[i]是第 i个节点的 价值。同时给你一个下标从 0开始的二维整数数组edges,其中edges[j] = [uj, vj, timej]表示节点uj 和vj之间有一条需要timej秒才能通过的无向边。最后,给你一个整数maxTime。合法路径指的是图中任意一条从节点0开始,最终回到节点 0,且花费...
2021-11-15 14:17:30
892
原创 反转链表-leecode267场周赛
题目描述给你一个链表的头节点 head 。链表中的节点 按顺序 划分成若干 非空 组,这些非空组的长度构成一个自然数序列(1, 2, 3, 4, ...)。一个组的 长度 就是组中分配到的节点数目。换句话说:节点 1 分配给第一组节点 2 和 3 分配给第二组节点 4、5 和 6 分配给第三组,以此类推注意,最后一组的长度可能小于或者等于 1 + 倒数第二组的长度 。反转 每个 偶数 长度组中的节点,并返回修改后链表的头节点 head 。思路分析太cai了,好久没做过链表的题目
2021-11-15 10:54:54
67
原创 车队 II
题目描述在一条单车道上有 n辆车,它们朝着同样的方向行驶。给你一个长度为 n的数组 cars,其中cars[i] = [position i, speed i],它表示:position i是第 i辆车和道路起点之间的距离(单位:米)。题目保证position i < position i+1。speed i是第 i辆车的初始速度(单位:米/秒)。简单起见,所有车子可以视为在数轴上移动的点。当两辆车占据同一个位置时,我们称它们相遇了。一旦两辆车相遇,它们会合并成一个车...
2021-11-05 16:56:28
150
原创 快速幂算法
题目描述给你一个正整数primeFactors。你需要构造一个正整数n,它满足以下条件:n质因数(质因数需要考虑重复的情况)的数目 不超过primeFactors个。n好因子的数目最大化。如果 n的一个因子可以被 n的每一个质因数整除,我们称这个因子是 好因子 。比方说,如果n = 12,那么它的质因数为[2,2,3],那么6和12是好因子,但3 和4不是。请你返回n的好因子的数目。由于答案可能会很大,请返回答案对10^9 + 7取余的结果。...
2021-11-03 15:45:39
133
原创 NMS算法conclusion与ROI Pooling原理
定义非极大值抑制(Non-Maximum Suppression,NMS),即抑制不是极大值的元素,可以理解为局部最大搜索。这个局部代表的是一个邻域,邻域有两个参数可变,一是邻域的维数,二是邻域的大小具体的方法描述假设有下面一张图为了定位一个车辆,算法找出了一堆的方框,我们需要判别哪些矩形框是没用的。非极大值抑制的方法是:先假设有6个矩形框,根据分类器的类别分类概率做排序,假设从小到大属于车辆的概率 分别为A、B、C、D、E、F。从最大概率矩形框F开始,分别判断A~E与F的重叠度IOU
2021-11-02 15:29:56
340
原创 review-最接近目标价格的甜点成本
题目描述你打算做甜点,现在需要购买配料。目前共有 n 种冰激凌基料和 m 种配料可供选购。而制作甜点需要遵循以下几条规则:必须选择 一种 冰激凌基料。可以添加 一种或多种 配料,也可以不添加任何配料。每种类型的配料 最多两份 。给你以下三个输入:baseCosts ,一个长度为 n 的整数数组,其中每个 baseCosts[i] 表示第 i 种冰激凌基料的价格。toppingCosts,一个长度为 m 的整数数组,其中每个 toppingCosts[i] 表示 一份 第 i 种冰激凌配料
2021-11-02 12:54:53
200
原创 Machine learning algorithm conclusion
分类问题【KNN】首先是距离问题,除了欧式距离(其中的各个分量即为评价指标),还有以下 曼哈顿距离 切比雪夫距离 标准化欧式距离 算法描述:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别 实例: 通过计算{搞笑,拥抱,打斗}向量距离,与"唐人街探案"最接近的5个电影大多属于喜剧片,即最终化为喜剧片的范围 回归问题【linear regression】特征:利用回归方程(函数)对一个或多个自变量(...
2021-11-01 11:03:46
114
原创 一遍扫过的string
类型: 字符串匹配+替换开始的思路: 用replace多次扫过,卡在最后5个测试用例最终思路:利用堆栈、队列的思路:设置标志位即可class Solution {public: map<string,string> mp; string evaluate(string s, vector<vector<string>>& knowledge) { for(auto t:knowledge) mp[t[0]]=
2021-10-27 12:42:45
92
原创 网络空闲的时刻
第一次一次过的题目。。感动题目描述给你一个有 n个服务器的计算机网络,服务器编号为0到n - 1。同时给你一个二维整数数组edges,其中edges[i] = [ui, vi]表示服务器ui 和vi之间有一条信息线路,在一秒内它们之间可以传输任意数目的信息。再给你一个长度为 n且下标从0开始的整数数组patience。题目保证所有服务器都是 相通的,也就是说一个信息从任意服务器出发,都可以通过这些信息线路直接或间接地到达任何其他服务器。编...
2021-10-20 16:47:38
124
原创 Detectron2 updating...
介绍之前一直看相关的api,包括数据集的注册,detectron这种标准数据集的custom注册等源代码分析,对json文件也有了很清晰的认识,COCO的注册更简单一些,直接调用register_coco_instances这个函数 具体annotations格式略简单demo测试python3 demo.py --config-file ../configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml \ --input de
2021-10-19 17:39:49
786
原创 绝对差值和 —— 二分
题目描述给你两个正整数数组 nums1 和 nums2 ,数组的长度都是 n 。数组 nums1 和 nums2 的 绝对差值和 定义为所有 |nums1[i] - nums2[i]|(0 <= i < n)的 总和(下标从 0 开始)。你可以选用 nums1 中的 任意一个 元素来替换 nums1 中的 至多 一个元素,以 最小化 绝对差值和。在替换数组 nums1 中最多一个元素 之后 ,返回最小绝对差值和。因为答案可能很大,所以需要对 10^9 + 7 取余 后返回。基
2021-10-18 16:36:07
158
原创 袋子里最少数目的球/ 分配给商店的最多商品的最小值
问题描述给你一个整数数组nums,其中nums[i]表示第i个袋子里球的数目。同时给你一个整数maxOperations。你可以进行如下操作至多maxOperations次:选择任意一个袋子,并将袋子里的球分到2 个新的袋子中,每个袋子里都有 正整数个球。比方说,一个袋子里有5个球,你可以把它们分到两个新袋子里,分别有 1个和 4个球,或者分别有 2个和 3个球。你的开销是单个袋子里球数目的 最大值,你想要 最小化开销。请你返回进行上述操作后的最...
2021-10-08 14:18:22
123
原创 逆向思维优化“序列中不同最大公约数的数目“
题目描述如下给你一个由正整数组成的数组 nums 。数字序列的 最大公约数 定义为序列中所有整数的共有约数中的最大整数。例如,序列 [4,6,16] 的最大公约数是 2 。数组的一个 子序列 本质是一个序列,可以通过删除数组中的某些元素(或者不删除)得到。例如,[2,5,10] 是 [1,2,1,2,4,1,5,10] 的一个子序列。计算并返回 nums 的所有 非空 子序列中 不同 最大公约数的 数目 。采用树形dp思想的写法如下但是是超时的,从数据规模来看,要达到O(nlog
2021-09-30 15:25:26
215
原创 “最少侧跳次数“retry - insert ‘dp‘ thought
题目描述给你一个长度为n的3 跑道道路,它总共包含n + 1个点,编号为0到n。一只青蛙从0号点第二条跑道出发,它想要跳到点n处。然而道路上可能有一些障碍。给你一个长度为 n + 1的数组obstacles,其中obstacles[i](取值范围从 0 到 3)表示在点 i处的obstacles[i]跑道上有一个障碍。如果obstacles[i] == 0,那么点i处没有障碍。任何一个点的三条跑道中最多有一个障碍。比方说,如果ob...
2021-09-27 10:42:14
105
原创 Associating Objects and Their Effects in Video实现视频扣图
首先,开发注释里谈到了Faster R-CNN的三个层次:Feature extraction: Images are taken and their feature maps are calculated. Region Proposal Networks: Given the feature maps calculated in the previous stage, produce set of RoIs around objects. Localization and Classificat
2021-09-24 14:04:19
190
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人