算法
antigeek
这个作者很懒,什么都没留下…
展开
-
【算法】leetcode 821. 字符的最短距离
给你一个字符串 s 和一个字符 c ,且 c 是 s 中出现过的字符。返回一个整数数组 answer ,其中 answer.length == s.length 且 answer[i] 是 s 中从下标 i 到离它 最近 的字符 c 的 距离 。两个下标i 和 j 之间的 距离 为 abs(i - j) ,其中 abs 是绝对值函数。原创 2022-04-19 09:33:28 · 199 阅读 · 0 评论 -
【算法】leetcode 385. 迷你语法分析器
给定一个字符串 s 表示一个整数嵌套列表,实现一个解析它的语法分析器并返回解析的结果 NestedInteger 。原创 2022-04-16 10:06:58 · 185 阅读 · 0 评论 -
【算法】leetcode357. 统计各位数字都不同的数字个数
给你一个整数 n ,统计并返回各位数字都不同的数字 x 的个数,其中 0 <= x < 10n 。原创 2022-04-11 09:44:35 · 498 阅读 · 0 评论 -
一致性哈希算法 Java实现
一致性哈希算法 虚拟节点 Java版本的简单实现。原创 2022-04-10 16:58:55 · 1081 阅读 · 0 评论 -
【算法】leetcode-780. 到达终点
给定四个整数sx,sy,tx和ty,如果通过一系列的转换可以从起点(sx, sy)到达终点(tx, ty),则返回 true,否则返回false。从点(x, y)可以转换到(x, x+y) 或者(x+y, y)。原创 2022-04-09 11:26:26 · 248 阅读 · 0 评论 -
【算法】leetcode-504 七进制数
给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。原创 2022-03-07 22:16:40 · 208 阅读 · 0 评论 -
【算法】leetcode-2100 适合打劫的日子
你和一群强盗准备打劫银行。给你一个下标从 0 开始的整数数组 security ,其中 security[i] 是第 i 天执勤警卫的数量。日子从 0 开始编号。同时给你一个整数 time 。如果第 i 天满足以下所有条件,我们称它为一个适合打劫银行的日子:第 i 天前和后都分别至少有 time 天。 第 i 天前连续 time 天警卫数目都是非递增的。 第 i 天后连续 time天警卫数目都是非递减的。 更正式的,第 i 天是一个合适打劫银行的日子当且仅当:security[i - time] &原创 2022-03-06 20:08:54 · 208 阅读 · 0 评论 -
【算法】leetcode-6 Z字形变换
将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下:P A H N A P L S I I G Y I R之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int numRows);示例 1:输入:s = “PA.原创 2022-03-01 21:15:54 · 87 阅读 · 0 评论 -
【算法】leetcode-1601 最多可达成的换楼请求数目
我们有 n 栋楼,编号从 0 到 n - 1 。每栋楼有若干员工。由于现在是换楼的季节,部分员工想要换一栋楼居住。给你一个数组 requests ,其中 requests[i] = [fromi, toi] ,表示一个员工请求从编号为 fromi的楼搬到编号为 toi 的楼。一开始 所有楼都是满的,所以从请求列表中选出的若干个请求是可行的需要满足 每栋楼员工净变化为 0 。意思是每栋楼 离开 的员工数目 等于该楼 搬入 的员工数数目。比方说 n = 3 且两个员工要离开楼 0 ,一个员工要离开楼 .原创 2022-02-28 22:23:12 · 259 阅读 · 0 评论 -
【算法】leetcode-553 最优除法
给定一组正整数,相邻的整数之间将会进行浮点除法操作。例如, [2,3,4] -> 2 / 3 / 4 。但是,你可以在任意位置添加任意数目的括号,来改变算数的优先级。你需要找出怎么添加括号,才能得到最大的结果,并且返回相应的字符串格式的表达式。你的表达式不应该含有冗余的括号。原创 2022-02-27 09:50:56 · 112 阅读 · 0 评论 -
【算法】leetcode-2016 增量元素之间的最大值
给你一个下标从 0 开始的整数数组 nums ,该数组的大小为 n ,请你计算 nums[j] - nums[i] 能求得的 最大差值 ,其中 0 <= i < j < n 且 nums[i] < nums[j] 。返回 最大差值 。如果不存在满足要求的 i 和 j ,返回 -1 。原创 2022-02-26 11:58:09 · 172 阅读 · 0 评论 -
【算法】leetcode-537 复数乘法
复数 可以用字符串表示,遵循 "实部+虚部i" 的形式,并满足下述条件:* 实部 是一个整数,取值范围是 [-100, 100]* 虚部 也是一个整数,取值范围是 [-100, 100]* i2 == -1给你两个字符串表示的复数 num1 和 num2 ,请你遵循复数表示形式,返回表示它们乘积的字符串。原创 2022-02-25 13:02:11 · 115 阅读 · 0 评论 -
【算法】leetcode-1706 球会落何处
用一个大小为 m x n 的二维网格 grid 表示一个箱子。你有 n 颗球。箱子的顶部和底部都是开着的。箱子中的每个单元格都有一个对角线挡板,跨过单元格的两个角,可以将球导向左侧或者右侧。将球导向右侧的挡板跨过左上角和右下角,在网格中用 1 表示。将球导向左侧的挡板跨过右上角和左下角,在网格中用 -1 表示。在箱子每一列的顶端各放一颗球。每颗球都可能卡在箱子里或从底部掉出来。如果球恰好卡在两块挡板之间的 "V" 形图案,或者被一块挡导向到箱子的任意一侧边上,就会卡住。原创 2022-02-24 10:07:26 · 92 阅读 · 0 评论 -
【算法】leetcode-917 仅仅反转字母
给你一个字符串 s ,根据下述规则反转字符串:所有非英文字母保留在原有位置。所有英文字母(小写或大写)位置反转。返回反转后的 s 。原创 2022-02-24 09:31:02 · 7300 阅读 · 0 评论 -
【算法】leetcode-838 推多米诺
n 张多米诺骨牌排成一行,将每张多米诺骨牌垂直竖立。在开始时,同时把一些多米诺骨牌向左或向右推。每过一秒,倒向左边的多米诺骨牌会推动其左侧相邻的多米诺骨牌。同样地,倒向右边的多米诺骨牌也会推动竖立在其右侧的相邻多米诺骨牌。如果一张垂直竖立的多米诺骨牌的两侧同时有多米诺骨牌倒下时,由于受力平衡, 该骨牌仍然保持不变。就这个问题而言,我们会认为一张正在倒下的多米诺骨牌不会对其它正在倒下或已经倒下的多米诺骨牌施加额外的力。给你一个字符串 dominoes 表示这一行多米诺骨牌的初始状态,其中:domin原创 2022-02-22 16:07:31 · 276 阅读 · 0 评论