- 博客(27)
- 资源 (1)
- 收藏
- 关注
原创 路由交换原理--笔记1
2021/9/14网络类型以大小分为什么类型?企业网应用是什么?小型企业网,中型企业网架构特点分层架构目的分层架构简述冗余设计简述:特点,形式传输介质分类同轴电缆 双绞线 光纤 类型两种双绞线水晶头连接方式什么是交叉线 直通线交叉线直通线使用场景IEEE 802.3协议分类网络类型以大小分为什么类型?小型:<=200设备中型:200-2000大型:2000+企业网应用是什么?1:接入internet2:远程互联小型企业网,中型企业网架构特点小型企业网:设备少 层次少 灵活性
2021-09-14 18:29:07
696
原创 算法:差分数组
差分数组差分数组基本内容定义差分数组形式它能解决什么问题与暴力解法相比解决流程差分数组具体题目应用题目描述解题思路解题步骤代码差分数组基本内容首先差分数组看上去是一个高大上的名词,实际上不还是一个数组嘛,差分数组的解题思想实际上就是创建一个数组然后对这个数组进行维护。定义定义:对于已知有n个元素的离线数列d,我们可以建立记录它每项与前一项差值的差分数组f:显然,f[1]=d[1]-0=d[1];对于整数i∈[2,n],我们让f[i]=d[i]-d[i-1]。差分数组形式差分数组原数组和差分数组形
2021-09-01 01:03:52
700
原创 【java实现】leetcode_413.等差数列划分--LinkedList公式计数和差分+计数(动态规划)
leetcode_413 题目描述 题目大意 思路描述 代码 写在最后 题目描述如果一个数列 至少有三个元素 ,并且任意两个相邻元素之差相同,则称该数列为等差数列。例如,[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差数列。给你一个整数数组 nums ,返回数组 nums 中所有为等差数组的 子数组 个数。子数组 是数组中的一个 连续序列。示例 1:输入:nums = [1,2,3,4]输出:3解释:nums 中有三个子等差数组:[1, 2, 3]、[2
2021-08-10 14:49:31
529
原创 leetcode_313超级丑数--未解决的动态规划方案
leetcode_313 题目描述 题目大意 思路描述 代码 写在最后 题目描述超级丑数 是一个正整数,并满足其所有质因数都出现在质数数组 primes 中。给你一个整数 n 和一个整数数组 primes ,返回第 n 个 超级丑数 。题目数据保证第 n 个 超级丑数 在 32-bit 带符号整数范围内。示例 1:输入:n = 12, primes = [2,7,13,19]输出:32解释:给定长度为 4 的质数数组primes =[2,7,13,19],前 12 个超级丑数
2021-08-09 14:13:39
195
原创 leetcode_1291.顺次数--一道简单的枚举题
leetcode_1291 题目描述 题目大意 思路描述 代码 写在最后 题目描述我们定义 「顺次数」为:每一位上的数字都比前一位上的数字大 1 的整数。请你返回由 [low, high] 范围内所有顺次数组成的 有序 列表(从小到大排序)。示例 1:输出:low = 100, high = 300输出:[123,234]示例 2:输出:low = 1000, high = 13000输出:[1234,2345,3456,4567,5678,6789,12345]提示:
2021-08-06 01:16:47
235
原创 leetcode_169. 多数元素--超级水王问题
leetcode_169 题目描述 题目大意 思路描述 代码 写在最后 题目描述给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是 非空的,并且给定的数组 总是存在多数元素。示例 1:输入:[3,2,3]输出:3示例 2:输入:[2,2,1,1,1,2,2]输出:2进阶:尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。来源:力扣(LeetCode) 题目大意给出一个数组
2021-08-05 23:46:13
323
原创 未解决--leetcode_802. 找到最终的安全状态--三色排序法+深度优先搜索,拓扑排序
leetcode_802 题目描述 题目大意 思路描述 代码 写在最后 题目描述在有向图中,以某个节点为起始节点,从该点出发,每一步沿着图中的一条有向边行走。如果到达的节点是终点(即它没有连出的有向边),则停止。对于一个起始节点,如果从该节点出发,无论每一步选择沿哪条有向边行走,最后必然在有限步内到达终点,则将该起始节点称作是 安全 的。返回一个由图中所有安全的起始节点组成的数组作为答案。答案数组中的元素应当按 升序 排列。该有向图有 n 个节点,按 0 到 n - 1 编号,其中
2021-08-05 23:18:59
211
原创 leetcode_611. 有效三角形的个数--未解决的枚举优化
leetcode_611 题目描述 题目大意 思路描述 代码 写在最后 题目描述给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。示例 1:输入: [2,2,3,4]输出: 3解释: 有效的组合是:2,3,4 (使用第一个 2)2,3,4 (使用第二个 2)2,2,3注意:数组长度不超过1000。数组里整数的范围为 [0, 1000]。通过次数34,777提交次数66,576来源:力扣(LeetCode) 题目大意给定一个包含非负整数的数组,
2021-08-04 18:54:57
197
原创 leetcode_581最短无序连续子数组--寻找最短升序子数组
leetcode_581 题目描述 题目大意 思路描述 代码 写在最后 题目描述给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。请你找出符合题意的 最短 子数组,并输出它的长度。示例 1:输入:nums = [2,6,4,8,10,9,15] 输出:5解释:你只需要对 [6, 4, 8, 10, 9]进行升序排序,那么整个表都会变为升序排序。示例 2:输入:nums = [1,2,3,4]输出:0示例 3:
2021-08-03 01:46:58
181
原创 leetcode_743. 网络延迟时间--迪杰斯特拉
leetcode_743 题目描述 题目大意 思路描述 代码 写在最后 题目描述有 n 个网络节点,标记为 1 到 n。给你一个列表 times,表示信号经过 有向 边的传递时间。 times[i] = (ui, vi, wi),其中 ui 是源节点,vi 是目标节点, wi 是一个信号从源节点传递到目标节点的时间。现在,从某个节点 K 发出一个信号。需要多久才能使所有节点都收到信号?如果不能使所有节点收到信号,返回 -1 。示例 1:输入:times = [[2,1,1],[2,3,1],
2021-08-02 23:50:06
309
原创 leetcode_1337. 矩阵中战斗力最弱的 K 行--未解决的二分优化
leetcode_1337题目描述题目大意思路描述代码写在最后题目描述给你一个大小为 m * n 的矩阵 mat,矩阵由若干军人和平民组成,分别用 1 和 0 表示。请你返回矩阵中战斗力最弱的 k 行的索引,按从最弱到最强排序。如果第 i 行的军人数量少于第 j 行,或者两行军人数量相同但 i 小于 j,那么我们认为第 i 行的战斗力比第 j 行弱。军人 总是 排在一行中的靠前位置,也就是说 1 总是出现在 0 之前。示例 1:输入:mat = [[1,1,0,0,0], [1,1,1,
2021-08-01 01:01:40
193
原创 leetcode_987. 二叉树的垂序遍历--二叉树垂序遍历+自定义排序
leetcode_987题目描述题目大意思路描述代码写在最后题目描述给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。对位于 (row, col) 的每个结点而言,其左右子结点分别位于 (row + 1, col - 1) 和 (row + 1, col + 1) 。树的根结点位于 (0, 0) 。二叉树的 垂序遍历 从最左边的列开始直到最右边的列结束,按列索引每一列上的所有结点,形成一个按出现位置从上到下排序的有序列表。如果同行同列上有多个结点,则按结点的值从小到大进行排序
2021-07-31 20:14:07
210
原创 leetcode_171. Excel 表列序号--Ascll码
leetcode_171题目描述题目大意思路描述代码写在最后题目描述给你一个字符串 columnTitle ,表示 Excel 表格中的列名称。返回该列名称对应的列序号。例如,A -> 1B -> 2C -> 3...Z -> 26AA -> 27AB -> 28 ...示例 1:输入: columnTitle = “A”输出: 1示例 2:输入: columnTitle = "AB"输出: 28示例 3:输入: colu
2021-07-30 22:26:12
323
原创 leetcode_1104. 二叉树寻路--二叉树的性质
leetcode_1104题目描述题目大意思路描述代码写在最后题目描述在一棵无限的二叉树上,每个节点都有两个子节点,树中的节点 逐行 依次按 “之” 字形进行标记。如下图所示,在奇数行(即,第一行、第三行、第五行……)中,按从左到右的顺序进行标记;而偶数行(即,第二行、第四行、第六行……)中,按从右到左的顺序进行标记。给你树上某一个节点的标号 label,请你返回从根节点到该标号为 label 节点的路径,该路径是由途经的节点标号所组成的。示例 1:输入:label = 14输出:[1,3
2021-07-29 03:23:37
345
原创 leetcode_863. 二叉树中所有距离为 K 的结点--哈希表+带标记的深度优先搜索
leetcode_863题目描述题目大意思路描述代码写在最后题目描述给定一个二叉树**(具有根结点 root)**, 一个目标结点 target ,和一个整数值 K 。返回到目标结点 target 距离为 K 的所有结点的值的列表。 答案可以以任何顺序返回。示例 1:输入:root = [3,5,1,6,2,0,8,null,null,7,4], target = 5, K = 2输出:[7,4,1]解释: 所求结点为与目标结点(值为 5)距离为 2 的结点, 值分别为 7,4,以及
2021-07-28 02:17:28
222
原创 详细图解动态规划leetcode_746. 使用最小花费爬楼梯--简单动态规划
动态规划leetcode_746--简单问题描述思路描述图解思路代码实现总结写在最后问题描述数组的每个下标作为一个阶梯,第 i 个阶梯对应着一个非负数的体力花费值 cost[i](下标从 0 开始)。每当你爬上一个阶梯你都要花费对应的体力值,一旦支付了相应的体力值,你就可以选择向上爬一个阶梯或者爬两个阶梯。请你找出达到楼层顶部的最低花费。在开始时,你可以选择从下标为 0 或 1 的元素作为初始阶梯。示例 1:输入:cost = [10, 15, 20]输出:15解释:最低花费是从 cost
2021-07-27 23:27:22
475
2
原创 leetcode_671. 二叉树中第二小的节点--leetcode刷题之路
leetcode_671简单题目描述题目大意思路描述代码写在最后题目描述给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为 2 或 0。如果一个节点有两个子节点的话,那么该节点的值等于两个子节点中较小的一个。更正式地说,root.val = min(root.left.val, root.right.val) 总成立。给出这样的一个二叉树,你需要输出所有节点中的第二小的值。如果第二小的值不存在的话,输出 -1 。示例 1:输入:root = [2,2,5,null,nu
2021-07-27 00:33:48
175
原创 leecode_1713. 得到子序列的最少操作次数--leetcode刷题之路
leetcode_1713题目描述题目大意思路描述代码题目描述给你一个数组 target ,包含若干 互不相同 的整数,以及另一个整数数组 arr ,arr 可能 包含重复元素。每一次操作中,你可以在 arr 的任意位置插入任一整数。比方说,如果 arr = [1,4,1,2] ,那么你可以在中间添加 3 得到 [1,4,3,1,2] 。你可以在数组最开始或最后面添加整数。请你返回 最少 操作次数,使得 target 成为 arr 的一个子序列。一个数组的 子序列 指的是删除原数组的某些元素(可能
2021-07-26 02:59:30
146
原创 详细图解leetcode_1743. 从相邻元素对还原数组--leetcode刷题之路
leetcode_1743题目描述题目大意思路描述代码写在最后题目描述存在一个由 n 个不同元素组成的整数数组 nums ,但你已经记不清具体内容。好在你还记得 nums 中的每一对相邻元素。给你一个二维整数数组 adjacentPairs ,大小为 n - 1 ,其中每个 adjacentPairs[i] = [ui, vi] 表示元素 ui 和 vi 在 nums 中相邻。题目数据保证所有由元素 nums[i] 和 nums[i+1] 组成的相邻元素对都存在于 adjacentPairs 中,存
2021-07-26 00:07:58
284
原创 leetcode_179. 最大数--leetcode刷题之路
leetcode_179题目描述题目大意思路描述代码写在最后题目描述给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。示例 1:输入:nums = [10,2]输出:“210”示例 2:输入:nums = [3,30,34,5,9]输出:“9534330”示例 3:输入:nums = [1]输出:“1”示例 4:输入:nums = [10]输出:“10”提示:
2021-07-24 23:27:07
395
原创 leetcode每日一题leetcode_1893. 检查是否区域内所有整数都被覆盖--leetcode刷题之路
leetcode_1893和我一起刷leetcode吧!题目描述题目大意思路描述代码写在最后题目描述给你一个二维整数数组 ranges 和两个整数 left 和 right 。每个 ranges[i] = [starti, endi] 表示一个从 starti 到 endi 的 闭区间 。如果闭区间 [left, right] 内每个整数都被 ranges 中 至少一个 区间覆盖,那么请你返回 true ,否则返回 false 。已知区间 ranges[i] = [starti, endi] ,如果
2021-07-23 22:40:33
243
原创 leecode_1935. 可以输入的最大单词数--leetcode刷题之路
leecode_1935题目描述题目大意思路描述代码写在最后题目描述键盘出现了一些故障,有些字母键无法正常工作。而键盘上所有其他键都能够正常工作。给你一个由若干单词组成的字符串 text ,单词间由单个空格组成(不含前导和尾随空格);另有一个字符串 brokenLetters ,由所有已损坏的不同字母键组成,返回你可以使用此键盘完全输入的 text 中单词的数目。示例 1:输入:text = “hello world”, brokenLetters = “ad”输出:1 解释:无法输入 “wo
2021-07-22 18:24:25
222
原创 leecode每日一题,leetcode_138. 复制带随机指针的链表--leecode刷题之路
leecode_138题目描述思路描述代码写在最后题目描述给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的 next 指针和 random 指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。复制链表中的指针都不应指向原链表中的节点 。例如,如果原链表中有 X 和 Y 两个
2021-07-22 17:20:53
193
原创 剑指 Offer 52. 两个链表的第一个公共节点--leetcode刷题之路
剑指 Offer 52问题描述思路描述代码思路一代码:思路二代码:写在最后问题描述剑指 Offer 52. 两个链表的第一个公共节点输入两个链表,找出它们的第一个公共节点。如下面的两个链表:在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节点
2021-07-21 03:38:42
458
原创 leetcode_1877数组中最大数对和的最小值--leetcode刷题之路
leetcode_1877数组中最大数对和的最小值题目描述思想代码题目描述思想这道题是一道排序+贪心问题,从第一眼看很容易联想到先排序后可能最后的结果就在nums[i]+nums[nums.length-i-1]中原因是:设按升序排序后的数组值为x1,x2,x3,…,xn可以得出xi>=x(i-m)代码package leetcode;import java.util.Arrays;import java.util.Scanner;public class leetcode_1
2021-07-21 01:32:30
203
原创 (JAVA)单链表详解——附完整源码!!!
数据结构:单链表,可以直接使用!代码部分说明部分代码部分不多比比直接上代码后面有代码的说明和我的思路,可能有不足之处,欢迎大神给出指正和建议import java.util.Scanner;class linkedList { //数据域 //首指针 private Node first; //尾指针 private Node end; /** * * @author qi cui * 定义单链表的数据形式 * */ //单个数据的数据形式
2021-07-19 23:41:30
425
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅