自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

原创 2611. 老鼠和奶酪

有两只老鼠和 n 块不同类型的奶酪,每块奶酪都只能被其中一只老鼠吃掉。下标为 i 处的奶酪被吃掉的得分为:如果第一只老鼠吃掉,则得分为 reward1[i]。如果第二只老鼠吃掉,则得分为 reward2[i]。给你一个正整数数组 reward1 ,一个正整数数组 reward2 ,和一个非负整数 k。请你返回第一只老鼠恰好吃掉 k 块奶酪的情况下,最大 得分为多少。示例 1:输入:reward1 = [1,1,3,4], reward2 = [4,4,1,1], k = 2输出:15。

2023-06-07 19:52:03 691

原创 受标签影响的最大值

我们有一个 n 项的集合。给出两个整数数组 values 和 labels ,第 i 个元素的值和标签分别是 values[i] 和 labels[i]。还会给出两个整数 numWanted 和 useLimit。从 n 个元素中选择一个子集 s :子集 s 的大小 小于或等于 numWanted。s 中 最多 有相同标签的 useLimit 项。一个子集的 分数 是该子集的值之和。返回子集 s 的最大 分数。

2023-05-23 12:30:09 416

原创 活字印刷。

你有一套活字字模 tiles,其中每个字模上都刻有一个字母 tiles[i]。返回你可以印出的非空字母序列的数目。注意:本题中,每个活字字模只能使用一次。示例 1:输入:“AAB”输出:8解释:可能的序列为 “A”, “B”, “AA”, “AB”, “BA”, “AAB”, “ABA”, “BAA”。示例 2:输入:“AAABBC”输出:188示例 3:输入:“V”输出:1提示:tiles 由大写英文字母组成来源:力扣(LeetCode)

2023-05-19 21:15:05 442

原创 负二进制数相加

给出基数为 -2 的两个数 arr1 和 arr2,返回两数相加的结果。数字以 数组形式 给出:数组由若干 0 和 1 组成,按最高有效位到最低有效位的顺序排列。例如,arr = [1,1,0,1] 表示数字 (-2)^3 + (-2)^2 + (-2)^0 = -3。数组形式 中的数字 arr 也同样不含前导零:即 arr == [0] 或 arr[0] == 1。返回相同表示形式的 arr1 和 arr2 相加的结果。两数的表示形式为:不含前导零、由若干 0 和 1 组成的数组。

2023-05-18 13:26:23 415

原创 数青蛙。。

给你一个字符串 croakOfFrogs,它表示不同青蛙发出的蛙鸣声(字符串 “croak” )的组合。由于同一时间可以有多只青蛙呱呱作响,所以 croakOfFrogs 中会混合多个 “croak”。请你返回模拟字符串中所有蛙鸣所需不同青蛙的最少数目。要想发出蛙鸣 “croak”,青蛙必须 依序 输出 ‘c’, ’r’, ’o’, ’a’, ’k’ 这 5 个字母。如果没有输出全部五个字母,那么它就不会发出声音。

2023-05-06 12:47:08 238

原创 检查替换后的词是否有效

给你一个字符串 s ,请你判断它是否 有效。字符串 s 有效 需要满足:假设开始有一个空字符串 t = “” ,你可以执行 任意次 下述操作将 t 转换为 s :将字符串 “abc” 插入到 t 中的任意位置。形式上,t 变为 tleft + “abc” + tright,其中 t == tleft + tright。注意,tleft 和 tright 可能为 空。如果字符串 s 有效,则返回 true;否则,返回 false。示例 1:输入:s = “aabcbc”输出:true。

2023-05-03 11:58:42 783

原创 通知所有员工所需的时间

公司里有 n 名员工,每个员工的 ID 都是独一无二的,编号从 0 到 n - 1。公司的总负责人通过 headID 进行标识。在 manager 数组中,每个员工都有一个直属负责人,其中 manager[i] 是第 i 名员工的直属负责人。对于总负责人,manager[headID] = -1。题目保证从属关系可以用树结构显示。公司总负责人想要向公司所有员工通告一条紧急消息。他将会首先通知他的直属下属们,然后由这些下属通知他们的下属,直到所有的员工都得知这条紧急消息。

2023-05-01 14:03:28 1516

原创 最长字符串链

给出一个单词数组 words ,其中每个单词都由小写英文字母组成。如果我们可以 不改变其他字符的顺序 ,在 wordA 的任何地方添加 恰好一个 字母使其变成 wordB ,那么我们认为 wordA 是 wordB 的 前身。例如,“abc” 是 “abac” 的 前身 ,而 “cba” 不是 “bcad” 的 前身词链是单词 [word_1, word_2, …, word_k] 组成的序列,k >= 1,其中 word1 是 word2 的前身,word2 是 word3 的前身,依此类推。

2023-04-27 14:48:09 371

原创 使数组严格递增

给你两个整数数组 arr1 和 arr2,返回使 arr1 严格递增所需要的最小「操作」数(可能为 0)。每一步「操作」中,你可以分别从 arr1 和 arr2 中各选出一个索引,分别为 i 和 j,0 <= i < arr1.length 和 0 <= j < arr2.length,然后进行赋值运算 arr1[i] = arr2[j]。如果无法让 arr1 严格递增,请返回 -1。示例 1:输入:arr1 = [1,5,3,6,7], arr2 = [1,3,2,4]输出:1。

2023-04-20 19:23:11 367

原创 分隔数组以得到最大和

给你一个整数数组 arr,请你将该数组分隔为长度 最多 为 k 的一些(连续)子数组。分隔完成后,每个子数组的中的所有值都会变为该子数组中的最大值。返回将数组分隔变换后能够得到的元素最大和。本题所用到的测试用例会确保答案是一个 32 位整数。示例 1:输入:arr = [1,15,7,9,2,5,10], k = 3输出:84解释:数组变为 [15,15,15,9,10,10,10]示例 2:输入:arr = [1,4,1,5,7,3,6,1,9,9,3], k = 4输出:83。

2023-04-19 15:46:32 368

原创 不邻接植花

有 n 个花园,按从 1 到 n 标记。另有数组 paths ,其中 paths[i] = [xi, yi] 描述了花园 xi 到花园 yi 的双向路径。在每个花园中,你打算种下四种花之一。另外,所有花园 最多 有 3 条路径可以进入或离开.你需要为每个花园选择一种花,使得通过路径相连的任何两个花园中的花的种类互不相同。以数组形式返回 任一 可行的方案作为答案 answer,其中 answer[i] 为在第 (i+1) 个花园中种植的花的种类。花的种类用 1、2、3、4 表示。保证存在答案。

2023-04-15 16:46:51 582

原创 驼峰式匹配

如果我们可以将小写字母插入模式串 pattern 得到待查询项 query,那么待查询项与给定模式串匹配。(我们可以在任何位置插入每个字符,也可以插入 0 个字符。给定待查询列表 queries,和模式串 pattern,返回由布尔值组成的答案列表 answer。只有在待查项 queries[i] 与模式串 pattern 匹配时, answer[i] 才为 true,否则为 false。

2023-04-14 15:11:05 365

原创 段式回文。

你会得到一个字符串 text。你应该把它分成 k 个子字符串 (subtext1, subtext2,…, subtextk) ,要求满足:subtexti 是 非空 字符串所有子字符串的连接等于 text ( 即subtext1 + subtext2 + … + subtextk == text )对于所有 i 的有效值( 即 1 <= i <= k ) ,subtexti == subtextk - i + 1 均成立返回k可能最大值。

2023-04-12 14:58:27 410

原创 困于环中的机器人

在无限的平面上,机器人最初位于 (0, 0) 处,面朝北方。注意:北方向 是y轴的正方向。南方向 是y轴的负方向。东方向 是x轴的正方向。西方向 是x轴的负方向。机器人可以接受下列三条指令之一:“G”:直走 1 个单位“L”:左转 90 度“R”:右转 90 度机器人按顺序执行指令 instructions,并一直重复它们。只有在平面中存在环使得机器人永远无法离开时,返回 true。否则,返回 false。示例 1:输入:instructions = “GGLLGG”

2023-04-11 16:56:29 547

原创 移动石子直到连续 II

每个回合,你可以将一颗端点石子拿起并移动到一个未占用的位置,使得该石子不再是一颗端点石子。值得注意的是,如果石子像 stones = [1,2,5] 这样,你将 无法 移动位于位置 5 的端点石子,因为无论将它移动到任何位置(例如 0 或 3),该石子都仍然会是端点石子。当你无法进行任何移动时,即,这些石子的位置连续时,游戏结束。要使游戏结束,你可以执行的最小和最大移动次数分别是多少?以长度为 2 的数组形式返回答案:answer = [minimum_moves, maximum_moves]。

2023-04-07 18:28:23 249

原创 华为OD机试-MVP争夺战

在星球争霸篮球赛对抗赛中,强大的宇宙战队,希望每个人都能拿到MVP。MVP的条件是,单场最高分得分获得者,可以并列,所以宇宙战队决定在比赛中,尽可能让更多的队员上场,且让所有有得分的队员得分都相同。然而比赛过程中的每一分钟的得分都只能由某一个人包揽。输入描述: 输入第一行为一个数字t,表示有得分的分钟数( 1 <= t <= 50),第二行为t个数字,代表每一分钟的得分p(1 <= p <= 50)输出描述: 输出有得分的队员都是MVP时最少的MVP得分。补充说明:示例示例1。

2023-04-03 16:15:37 1010

原创 交换一次的先前排列

给你一个正整数数组 arr(可能存在重复的元素),请你返回可在 一次交换(交换两数字 arr[i] 和 arr[j] 的位置)后得到的、按字典序排列小于 arr 的最大排列。如果无法这么操作,就请返回原数组。示例 1:输入:arr = [3,2,1]输出:[3,1,2]解释:交换 2 和 1示例 2:输入:arr = [1,1,5]输出:[1,1,5]解释:已经是最小排列示例 3:输入:arr = [1,9,4,6,7]输出:[1,7,4,6,9]

2023-04-03 16:02:01 266

原创 多边形三角剖分的最低得分

你有一个凸的 n 边形,其每个顶点都有一个整数值。给定一个整数数组 values ,其中 values[i] 是第 i 个顶点的值(即 顺时针顺序 )。假设将多边形 剖分 为 n - 2 个三角形。对于每个三角形,该三角形的值是顶点标记的乘积,三角剖分的分数是进行三角剖分后所有 n - 2 个三角形的值之和。返回 多边形进行三角剖分后可以得到的最低分。示例 1:输入:values = [1,2,3]输出:6解释:多边形已经三角化,唯一三角形的分数为 6。

2023-04-02 18:15:03 226

原创 隐藏个人信息

给你一条个人信息字符串 s ,可能表示一个 邮箱地址 ,也可能表示一串 电话号码。返回按如下规则 隐藏 个人信息后的结果:电子邮件地址:一个电子邮件地址由以下部分组成:一个 名字 ,由大小写英文字母组成,后面跟着一个 ‘@’ 字符,后面跟着一个 域名 ,由大小写英文字母和一个位于中间的 ‘.’ 字符组成。‘.’ 不会是域名的第一个或者最后一个字符。要想隐藏电子邮件地址中的个人信息:名字 和 域名 部分的大写英文字母应当转换成小写英文字母。

2023-04-01 12:13:21 342

原创 最短公共超序列

给出两个字符串 str1 和 str2,返回同时以 str1 和 str2 作为子序列的最短字符串。如果答案不止一个,则可以返回满足条件的任意一个答案。

2023-03-28 16:51:09 162

原创 统计只差一个字符的子串数目

给你两个字符串 s 和 t ,请你找出 s 中的非空子串的数目,这些子串满足替换 一个不同字符 以后,是 t 串的子串。换言之,请你找到 s 和 t 串中 恰好 只有一个字符不同的子字符串对的数目。比方说, “computer” and “computation” 只有一个字符不同: ‘e’/‘a’ ,所以这一对子字符串会给答案加 1。请你返回满足上述条件的不同子字符串对数目。一个 子字符串 是一个字符串中连续的字符。示例 1:输入:s = “aba”, t = “baba”输出:6。

2023-03-27 19:49:38 579

原创 Leetcode字符流

设计一个算法:接收一个字符流,并检查这些字符的后缀是否是字符串数组 words 中的一个字符串。例如,words = [“abc”, “xyz”] 且字符流中逐个依次加入 4 个字符 ‘a’、‘x’、‘y’ 和 ‘z’ ,你所设计的算法应当可以检测到 “axyz” 的后缀 “xyz” 与 words 中的字符串 “xyz” 匹配。按下述要求实现 StreamChecker 类:StreamChecker(String[] words) :构造函数,用字符串数组 words 初始化数据结构。

2023-03-24 17:28:05 258

原创 等差子数组

如果一个数列由至少两个元素组成,且每两个连续元素之间的差值都相同,那么这个序列就是 等差数列。更正式地,数列 s 是等差数列,只需要满足:对于每个有效的 i , s[i+1] - s[i] == s[1] - s[0] 都成立。例如,下面这些都是 等差数列 :7, 7, 7, 7下面的数列 不是等差数列 :给你一个由 n 个整数组成的数组 nums,和两个由 m 个整数组成的数组 l 和 r,后两个数组表示 m 组范围查询,其中第 i 个查询对应范围 [l[i], r[i]]。

2023-03-23 00:26:02 156

原创 无矛盾的最佳球队

假设你是球队的经理。对于即将到来的锦标赛,你想组合一支总体得分最高的球队。球队的得分是球队中所有球员的分数 总和。然而,球队中的矛盾会限制球员的发挥,所以必须选出一支 没有矛盾 的球队。如果一名年龄较小球员的分数 严格大于 一名年龄较大的球员,则存在矛盾。同龄球员之间不会发生矛盾。给你两个列表 scores 和 ages,其中每组 scores[i] 和 ages[i] 表示第 i 名球员的分数和年龄。请你返回 所有可能的无矛盾球队中得分最高那支的分数。

2023-03-22 17:09:58 110

原创 连续子数组的最大和

输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。示例1:输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。提示:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/lian-xu-zi-shu-zu-de-zui-da-he-lcof著作权归领扣网络所有。

2023-03-20 17:02:30 105

原创 执行操作后字典序最小的字符串

给你一个字符串 s 以及两个整数 a 和 b。其中,字符串 s 的长度为偶数,且仅由数字 0 到 9 组成。你可以在 s 上按任意顺序多次执行下面两个操作之一:累加:将 a 加到 s 中所有下标为奇数的元素上(下标从 0 开始)。数字一旦超过 9 就会变成 0,如此循环往复。例如,s = “3456” 且 a = 5,则执行此操作后 s 变成 “3951”。轮转:将 s 向右轮转 b 位。例如,s = “3456” 且 b = 1,则执行此操作后 s 变成 “6345”。

2023-03-19 20:19:45 383

原创 分割两个字符串得到回文串

给你两个字符串 a 和 b ,它们长度相同。请你选择一个下标,将两个字符串都在 相同的下标 分割开。由 a 可以得到两个字符串: aprefix 和 asuffix ,满足 a = aprefix + asuffix ,同理,由 b 可以得到两个字符串 bprefix 和 bsuffix ,满足 b = bprefix + bsuffix。请你判断 aprefix + bsuffix 或者 bprefix + asuffix 能否构成回文串。

2023-03-18 13:23:43 93

原创 2389. 和有限的最长子序列

给你一个长度为 n 的整数数组 nums ,和一个长度为 m 的整数数组 queries。返回一个长度为 m 的数组 answer ,其中 answer[i] 是 nums 中 元素之和小于等于 queries[i] 的 子序列 的 最大 长度。子序列 是由一个数组删除某些元素(也可以不删除)但不改变剩余元素顺序得到的一个数组。示例 1:输入:nums = [4,5,2,1], queries = [3,10,21]输出:[2,3,4]

2023-03-17 22:48:05 64 1

原创 eclipse环境下配置tomcat服务器

首先你必须确保已经下载好Tomcat并配置好了环境变量如果你还没有下载tomcat,推荐看https://blog.csdn.net/SmartDemo/article/details/104609358/然后你必须确保已经Eclipse配置好Server插件可以看我的另一篇文章https://blog.csdn.net/admite/article/details/107747646配置tomact方法如下点击Window---------->Preferences找到Server,

2020-08-02 18:55:53 444

原创 Eclipse配置server插件

用Eclipse创建javaWeb项目的前提是你的Eclipse配置好server插件。查看eclipse有没有server插件的方法如下:1.点击Window------>Preferences2.查看是否含有Server注意 Server下必须有这5项才说明Server配置成功有些小伙伴的eclipse是只有3项的,这就需要下载Server插件了。3.下载Server插件首先查看你的eclipse版本点击Help--------------->About Eclipse

2020-08-02 17:59:40 4745 6

原创 有效的数独

题目描述判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。上图是一个部分填充的有效的数独。数独部分空格内已填入了数字,空白格用 ‘.’ 表示。示例 1:输入:[[“5”,“3”,".",".",“7”,".",".",".","."],[“6”,".",".",“1”,“9”,“5”,".",".","."],["

2020-07-27 12:14:47 108

原创 移位字符串分组

题目描述给定一个字符串,对该字符串可以进行 “移位” 的操作,也就是将字符串中每个字母都变为其在字母表中后续的字母,比如:“abc” -> “bcd”。这样,我们可以持续进行 “移位” 操作,从而生成如下移位序列:“abc” -> “bcd” -> … -> “xyz”给定一个包含仅小写字母字符串的列表,将该列表中所有满足 “移位” 操作规律的组合进行分组并返回。示例:输入:[“abc”, “bcd”, “acef”, “xyz”, “az”, “ba”, “a”, “z”

2020-07-27 11:53:57 354

原创 字母异位词分组

题目描述给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]输出:[[“ate”,“eat”,“tea”],[“nat”,“tan”],[“bat”]]说明:所有输入均为小写字母。不考虑答案输出的顺序。分析使用HashMap,其中键是字符串按字符从a~z排序得到的新字符串,值是满足排序后的值为键的字符串组成的集合。返回HashMap的值即可。代码

2020-07-27 11:45:48 173

原创 存在重复元素 II

题目描述给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的 绝对值 至多为 k。示例 1:输入: nums = [1,2,3,1], k = 3输出: true示例 2:输入: nums = [1,0,1,1], k = 1输出: true示例 3:输入: nums = [1,2,3,1,2,3], k = 2输出: false分析定义HashMap,其中键是数组中的数字,值是数字的索引

2020-07-27 11:22:25 84

原创 两个数组的交集 II

题目描述给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2,2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[4,9]说明:输出结果中每个元素出现的次数,应与元素在两个数组中出现次数的最小值一致。我们可以不考虑输出结果的顺序。分析定义HashMap,键是字符,值是字符出现的次数把2个字符串都转换为HashMap,分别为map1、map2定义List

2020-07-27 11:04:47 111

原创 字符串中的第一个唯一字符

题目描述给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0s = “loveleetcode”返回 2提示:你可以假定该字符串只包含小写字母。分析1.定义HashMap,其中键是字符,值是字符出现的次数;2.定义List,把HashMap中值=1的字符放入List;3.比较List中字符的索引,取最小值代码class Solution { public int firstUniqChar(Stri

2020-07-27 10:50:01 553

原创 两个列表的最小索引总和

题目描述假设Andy和Doris想在晚餐时选择一家餐厅,并且他们都有一个表示最喜爱餐厅的列表,每个餐厅的名字用字符串表示。你需要帮助他们用最少的索引和找出他们共同喜爱的餐厅。 如果答案不止一个,则输出所有答案并且不考虑顺序。 你可以假设总是存在一个答案。示例 1:输入:[“Shogun”, “Tapioca Express”, “Burger King”, “KFC”][“Piatti”, “The Grill at Torrey Pines”, “Hungry Hunter Steakhous

2020-07-27 10:29:51 138

原创 同构字符串

题目描述给定两个字符串 s 和 t,判断它们是否是同构的。如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。示例 1:输入: s = “egg”, t = “add”输出: true示例 2:输入: s = “foo”, t = “bar”输出: false示例 3:输入: s = “paper”, t = “title”输出: true说明:你可以假

2020-07-27 10:00:08 127

原创 删除排序数组中的重复项

题目描述题目来源于leetcode给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新

2020-07-26 20:32:36 118

原创 寻找旋转排序数组中的最小值

题目描述题目来源于leetcode假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。请找出其中最小的元素。你可以假设数组中不存在重复元素。示例 1:输入: [3,4,5,1,2]输出: 1示例 2:输入: [4,5,6,7,0,1,2]输出: 0简单分析索引 i 从0开始,遍历整个数组,如果出现nums[i+1]<nums[i],说明nums[ i +1]就是最小值,如果遍历完

2020-07-26 20:15:35 158

空空如也

空空如也

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

TA关注的人

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