自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

shadowgully的博客

no one but you

  • 博客(99)
  • 资源 (3)
  • 收藏
  • 关注

原创 WD暴力求解-例题2.5 叠筐

【代码】WD暴力求解-例题2.5 叠筐。

2024-03-09 13:12:59 509

原创 WD暴力求解-习题2.1 与7无关的数

【代码】WD暴力求解-习题2.1 与7无关的数。

2024-03-08 15:27:28 381

原创 WD暴力求解-例题2.3 对称平方数

【代码】WD暴力求解-例题2.3 对称平方数。

2024-03-08 15:26:40 324

原创 WD暴力求解-例题2.2 反序数

【代码】WD暴力求解-例题2.2 反序数。

2024-03-08 15:25:07 314

原创 WD暴力求解-例题2.1 abc

【代码】WD暴力求解-例题2.1 abc。

2024-03-08 15:23:52 431

原创 windows官方工具mediacreationtool制作启动盘导致U盘变成32G

【代码】windows官方工具mediacreationtool制作启动盘导致U盘变成32G。

2023-01-31 22:40:10 961 1

原创 贪心算法-双指针算法-通过连接另一个数组的子数组得到一个数组

你可以分别在 nums 中选出第 0 个子数组 [1,-1,0,1,-1,-1,3,-2,0] 和第 1 个子数组 [1,-1,0,1,-1,-1,3,-2,0]。:选择子数组 [1,2,3,4,10,-2] 和 [1,2,3,4,10,-2] 是不正确的,因为它们出现的顺序与 groups 中顺序不同。:选择子数组 [7,7,1,2,3,4,7,7] 和 [7,7,1,2,3,4,7,7] 是不正确的,因为它们不是不相交子数组。[10,-2] 必须出现在 [1,2,3,4] 之前。

2022-12-17 21:41:36 159

原创 leetcode-1764-通过连接另一个数组的子数组得到一个数组

你可以分别在 nums 中选出第 0 个子数组 [1,-1,0,1,-1,-1,3,-2,0] 和第 1 个子数组 [1,-1,0,1,-1,-1,3,-2,0]。:选择子数组 [1,2,3,4,10,-2] 和 [1,2,3,4,10,-2] 是不正确的,因为它们出现的顺序与 groups 中顺序不同。:选择子数组 [7,7,1,2,3,4,7,7] 和 [7,7,1,2,3,4,7,7] 是不正确的,因为它们不是不相交子数组。[10,-2] 必须出现在 [1,2,3,4] 之前。

2022-12-17 21:41:01 135

原创 leetcode-1785-构成特定和需要添加的最少元素

在nums求和的过程中,想办法让和的绝对值小于limit,我们可以通过给这个和加上或者减去limit来实现这个效果,并分别记录加上和减去的次数,这个次数在后面是可以相互抵消的。:可以将 -2 和 -3 添加到数组中,数组的元素总和变为 1 - 1 + 1 - 2 - 3 = -4。看到这道题,第一反应就是把nums中的数加起来,然后用加起来的值和goal的差值除以limit即可得到结果。原因在于后面的测试用例中nums的和非常大,超出了int所能表示的范围,因此我们还要考虑其他的方式。

2022-12-16 23:24:15 533

原创 并查集-检查边长度限制的路径是否存在

给你一个n个点组成的无向图边集edgeList,其中表示点ui和点vi之间有一条长度为disi的边。请注意,两个点之间可能有。给你一个查询数组queries,其中,你的任务是对于每个查询queries[j],判断是否存在从pj到qj的路径,且这条路径上的每一条边都limitj。请你返回一个answer,其中,当queries[j]的查询结果为true时,answer第j个值为true,否则为false。:上图为给定的输入数据。注意到 0 和 1 之间有两条重边,分别为 2 和 16。

2022-12-14 21:41:37 139

原创 leetcode-1697-检查边长度限制的路径是否存在

给你一个n个点组成的无向图边集edgeList,其中表示点ui和点vi之间有一条长度为disi的边。请注意,两个点之间可能有。给你一个查询数组queries,其中,你的任务是对于每个查询queries[j],判断是否存在从pj到qj的路径,且这条路径上的每一条边都limitj。请你返回一个answer,其中,当queries[j]的查询结果为true时,answer第j个值为true,否则为false。:上图为给定的输入数据。注意到 0 和 1 之间有两条重边,分别为 2 和 16。

2022-12-14 21:39:51 172

原创 位运算-两整数之和

此外,本题还有一个特别好玩的解法,我们知道对数函数能够将乘除法运算变为加减法运算。同理我们也能把加减法运算用乘除法的形式来表示。本题要求不使用加减号来完成加法运算,按计算机思维来考虑的话不难想到可以通过位运算来模拟计算机的加法。本题需要用到三个位运算符。可以知道该位是否需要进位,由于进位值将加到更高位,因此需要进行左移位。由于左移位最终会变成0,这时也就能直接得出答案了。输入:a = 1, b = 2。输入:a = 2, b = 3。,计算并返回两整数之和。可实现不进位的加法运算。

2022-12-14 19:58:23 172

原创 leetcode-371-两整数之和

此外,本题还有一个特别好玩的解法,我们知道对数函数能够将乘除法运算变为加减法运算。同理我们也能把加减法运算用乘除法的形式来表示。本题要求不使用加减号来完成加法运算,按计算机思维来考虑的话不难想到可以通过位运算来模拟计算机的加法。本题需要用到三个位运算符。可以知道该位是否需要进位,由于进位值将加到更高位,因此需要进行左移位。由于左移位最终会变成0,这时也就能直接得出答案了。输入:a = 1, b = 2。输入:a = 2, b = 3。,计算并返回两整数之和。可实现不进位的加法运算。

2022-12-14 19:58:06 102

原创 leetcode-1832-判断句子是否为全字母句

本题可直接用暴力解法,由于句子中均为小写字母,可以用一个长度为26初值为0的数组,将句子从头到尾完整扫描一遍,每个字母对应位置数加1。扫描完成后再对长度26的数组扫描一遍,如果没有为0的元素,说明句子中包含了所有字母。输入:sentence = “thequickbrownfoxjumpsoverthelazydog”解释:sentence 包含英语字母表中每个字母至少一次。输入:sentence = “leetcode”指包含英语字母表中每个字母至少一次的句子。给你一个仅由小写英文字母组成的字符串。

2022-12-14 15:42:11 96

原创 双指针算法-快慢指针-环形链表 II

给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置**(索引从 0 开始)**。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改 链表。142. 环形链表 II - 力扣(LeetCode) (leetcode-cn.c

2022-02-11 17:13:53 123

原创 leetcode-142-环形链表 II

给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置**(索引从 0 开始)**。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改 链表。142. 环形链表 II - 力扣(LeetCode) (leetcode-cn.c

2022-02-11 17:13:12 828

原创 双指针算法-合并两个有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。示例 1:输入:nums1 = [1,2,3,0

2022-02-11 16:00:14 577

原创 leetcode-88-合并两个有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。**注意:**最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。示例 1:输入:nums1 = [1,2

2022-02-11 15:59:32 78

原创 双指针算法-两数之和 II

给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] ,则 1 <= index1 < index2 <= numbers.length 。以长度为 2 的整数数组 [index1, index2] 的形式返回这两个整数的下标 index1 和 index2。你可以假设每个输入 只对应唯一的答案 ,而且

2022-02-11 15:29:07 193

原创 leetcode-167-两数之和 II

给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] ,则 1 <= index1 < index2 <= numbers.length 。以长度为 2 的整数数组 [index1, index2] 的形式返回这两个整数的下标 index1 和 index2。你可以假设每个输入 只对应唯一的答案 ,而且

2022-02-11 15:26:58 6872 1

原创 贪心算法-非递减数列

给你一个长度为 n 的整数数组 nums ,请你判断在 最多 改变 1 个元素的情况下,该数组能否变成一个非递减数列。我们是这样定义一个非递减数列的: 对于数组中任意的 i (0 <= i <= n-2),总满足 nums[i] <= nums[i + 1]。示例 1:输入: nums = [4,2,3]输出: true解释: 你可以通过把第一个 4 变成 1 来使得它成为一个非递减数列。示例 2:输入: nums = [4,2,1]输出: false解释: 你不能

2022-02-10 09:53:19 256

原创 leetcode-665-非递减数列

给你一个长度为 n 的整数数组 nums ,请你判断在 最多 改变 1 个元素的情况下,该数组能否变成一个非递减数列。我们是这样定义一个非递减数列的: 对于数组中任意的 i (0 <= i <= n-2),总满足 nums[i] <= nums[i + 1]。示例 1:输入: nums = [4,2,3]输出: true解释: 你可以通过把第一个 4 变成 1 来使得它成为一个非递减数列。示例 2:输入: nums = [4,2,1]输出: false解释: 你不能

2022-02-10 09:52:48 156

原创 贪心算法-根据身高重建队列

假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] = [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi 的人。请你重新构造并返回输入数组 people 所表示的队列。返回的队列应该格式化为数组 queue ,其中 queue[j] = [hj, kj] 是队列中第 j 个人的属性(queue[0] 是排在队列前面的人)。示例 1:输入:people = [[7,0],[4,4],[

2022-02-10 09:51:45 108

原创 leetcode-406-根据身高重建队列

假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] = [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi 的人。请你重新构造并返回输入数组 people 所表示的队列。返回的队列应该格式化为数组 queue ,其中 queue[j] = [hj, kj] 是队列中第 j 个人的属性(queue[0] 是排在队列前面的人)。示例 1:输入:people = [[7,0],[4,4],[

2022-02-10 09:39:06 125

原创 贪心算法-转折-买卖股票的最好时机

给定一个数组 prices ,其中 prices[i] 表示股票第 i 天的价格。在每一天,你可能会决定购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以购买它,然后在 同一天 出售。返回 你能获得的 最大 利润 。示例 1:输入: prices = [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。随后,在第 4 天(股票价格 = 3)的时候买

2022-02-09 15:01:54 139

原创 leetcode-122-股票买卖时机

给定一个数组 prices ,其中 prices[i] 表示股票第 i 天的价格。在每一天,你可能会决定购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以购买它,然后在 同一天 出售。返回 你能获得的 最大 利润 。示例 1:输入: prices = [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。随后,在第 4 天(股票价格 = 3)的时候买

2022-02-09 15:00:21 71

原创 贪心算法-区间问题-划分字母区间

字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。返回一个表示每个字符串片段的长度的列表。示例:输入:S = “ababcbacadefegdehijhklij”输出:[9,7,8]解释:划分结果为 “ababcbaca”, “defegde”, “hijhklij”。每个字母最多出现在一个片段中。像 “ababcbacadefegde”, “hijhklij” 的划分是错误的,因为划分的片段数较少。提示:S的长度在[1, 500]之间

2022-02-09 14:46:26 165

原创 leetcode-763-划分字母区间

字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。返回一个表示每个字符串片段的长度的列表。示例:输入:S = “ababcbacadefegdehijhklij”输出:[9,7,8]解释:划分结果为 “ababcbaca”, “defegde”, “hijhklij”。每个字母最多出现在一个片段中。像 “ababcbacadefegde”, “hijhklij” 的划分是错误的,因为划分的片段数较少。提示:S的长度在[1, 500]之间

2022-02-09 14:42:07 558

原创 贪心算法-区间问题-合并区间-用最少数量的箭引爆气球

在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 x start,x end, 且满足 xstart ≤ x ≤ xend,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一旦被射出之后,可以无限地前进。我们想找到使得所有气球全部被引爆,所需的

2022-02-09 14:19:09 96

原创 leetcode-452-用最少数量的箭引爆气球

在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 x start,x end, 且满足 xstart ≤ x ≤ xend,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一旦被射出之后,可以无限地前进。我们想找到使得所有气球全部被引爆,所需的

2022-02-09 14:18:03 134

原创 贪心算法-种花问题

假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组 flowerbed 表示花坛,由若干 0 和 1 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数 n ,能否在不打破种植规则的情况下种入 n 朵花?能则返回 true ,不能则返回 false。示例 1:输入:flowerbed = [1,0,0,0,1], n = 1输出:true示例 2:输入:flowerbed = [1,0,0,0,

2022-02-09 13:58:55 319

原创 leetcode-605-种花问题

假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组 flowerbed 表示花坛,由若干 0 和 1 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数 n ,能否在不打破种植规则的情况下种入 n 朵花?能则返回 true ,不能则返回 false。示例 1:输入:flowerbed = [1,0,0,0,1], n = 1输出:true示例 2:输入:flowerbed = [1,0,0,0,

2022-02-09 13:58:24 6583

原创 贪心算法-区间问题-无重叠区间

给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。示例 1:输入: [ [1,2], [2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。示例 2:输入: [ [1,2], [1,2], [1,2] ]输出: 2解释: 你需要移除两个 [1,2] 来使剩下的区间没有重叠。示例 3:输入: [

2022-02-09 13:49:35 566

原创 leetcode-435-无重叠区间

给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。示例 1:输入: [ [1,2], [2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。示例 2:输入: [ [1,2], [1,2], [1,2] ]输出: 2解释: 你需要移除两个 [1,2] 来使剩下的区间没有重叠。示例 3:输入: [

2022-02-09 13:48:01 170

原创 burp suite在越权测试中的使用

鉴权场景的应用1.工具准备需要提前安装好Auth Analyzer插件,安装方法如图所示:由于Burp代理需要设置系统代理和浏览器代理,为了方便起见,可以使用Burp Suite内置浏览器(已经开启了代理)。注意,这个Open Browser旁边的旁边按钮最好设置为Intercept is off(否则Burp将会拦截所有请求,需要一个个请求手动点击Forward)。2.环境准备使用Burp内置的浏览器登录一个具有完全权限的账号,使用其他的浏览器登录一个不具有任何权限的账号,并获取这个无权限

2022-01-12 10:47:37 3920 1

原创 SQL使用不同方式查询同一逻辑内容时数量不一致的问题

首先检查不同查询方式所用的SQL语句是否不同,如果不同,有哪些区别。下面是查询同一种数据的两种不同方式,从产品方案来说,两种方法在理论上应当得到相同的数量。count(getZt)SELECT COUNT(*) FROM SS_API WHERE zt_id IN (SELECT id FROM WD_ZT WHERE id='02021091311285496100000101001103' OR sjztid='02021091311285496100000101001103' OR

2021-11-24 19:57:24 863

原创 golang map

golang中的map在初始化方面和数组比较相似。区别在于map在make的时候可以只指定类型,不指定大小,而且map也不存在capacity。map类型一般是如下形式map[key类型]value类型package mainimport "fmt"func main() { //var声明,稍后再使用make分配空间 var map1 map[string]string if map1 == nil { fmt.Println("nil") } map1 = make(map[st

2021-10-22 15:46:06 109

原创 golang数组与slice

golang的数组分为固定长度和动态(slice)两种形式。定长数组定长数组采用数组名 := [长度]数组成员类型{初始化值}声明并初始化或者var 数组名 [长度]数组成员类型声明。定长数组可以采用for循环或者range for循环遍历:array1 := [5]int{1, 2, 3, 4, 5}fmt.Println(array1)for index, value := range array1 { fmt.Println(index, value)}定长数组在参数传递过程

2021-10-22 14:37:02 604

原创 golang for循环

golang中的for循环有多种形式,和C++的for循环非常类似。一、完整的for循环完整的for循环的格式为for 初始化;条件判断;改变条件判断所用变量{},完整的for循环通常用于已知长度的容器或数组的遍历。arrays := [10]int{1, 23, 442, 234, 534, 123, 124}for i := 0; i < len(arrays); i++ { fmt.Println(arrays[i])}二、类似while循环的for循环类似while的f

2021-10-22 10:17:30 9308

原创 golang指针

golang中的指针和C/C++类似。以学习C语言指针时常用的swap函数为例,如果不使用指针时,交换的是swap函数中局部变量的值,因此无法交换两个参数的值。package mainimport "fmt"func swapTwo(lhs int, rhs int) { fmt.Printf("typeof args = %T\n", lhs) lhs, rhs = rhs, lhs}func main() { a := 123 b := 321 fmt.Println(

2021-10-21 16:34:36 234

arithmetic(带括号).zip

C++实现的四则运算计算器,支持带括号的表达式,适用于整数运算,稍微修改后可进行浮点运算。提供了VisualStudio完整项目压缩包

2020-08-06

计算机性能监测工具.exe

采用C#编写,适用于windows,需要.NET Framework环境。可以查看电脑的CPU、网卡等信息,并能动态更新即时CPU占用率,同时可查看内存占用率、磁盘占用率。并具备日志记录功能。

2020-07-26

ChezScheme9.5.exe

ChezScheme的window安装程序,(官网安装https://cisco.github.io/ChezScheme/),由于官网在国外,本人当时下了很半天,希望能帮助到下载慢的朋友们

2020-06-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除