
算法与数据结构
文章平均质量分 67
iygvh
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
字节面试题——309. 买卖股票的最佳时机含冷冻期
给定一个整数数组prices,其中第prices[i]表示第i天的股票价格。设计一个算法计算出最大利润。你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。原创 2024-09-05 18:27:38 · 368 阅读 · 0 评论 -
字节快手面试题——714. 买卖股票的最佳时机含手续费
给定一个整数数组prices,其中prices[i]表示第i天的股票价格;整数fee代表了交易股票的手续费用。你可以地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。返回获得利润的最大值。这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。原创 2024-09-05 17:57:55 · 455 阅读 · 0 评论 -
字节面试题——738. 单调递增的数字
当且仅当每个相邻位数上的数字x和y满足x原创 2024-09-04 21:24:55 · 787 阅读 · 0 评论 -
字节面试题——763. 划分字母区间
给你一个字符串s。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是s。返回一个表示每个字符串片段的长度的列表。原创 2024-09-04 20:59:43 · 329 阅读 · 0 评论 -
字节面试题——435. 无重叠区间
给定一个区间的集合intervals,其中。返回需要移除区间的最小数量,使剩余区间互不重叠。原创 2024-09-04 20:44:25 · 821 阅读 · 0 评论 -
字节面试题——860. 柠檬水找零
在柠檬水摊上,每一杯柠檬水的售价为5美元。顾客排队购买你的产品,(按账单bills支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付5美元、10美元或20美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付5美元。注意,一开始你手头没有任何零钱。给你一个整数数组bills,其中bills[i]是第i位顾客付的账。如果你能给每位顾客正确找零,返回true,否则返回false。51020。原创 2024-09-04 20:27:00 · 303 阅读 · 0 评论 -
字节面试题——1005. K 次取反后最大化的数组和
给你一个整数数组nums和一个整数kinums[i]-nums[i]重复这个过程恰好k次。可以多次选择同一个下标i。以这种方式修改数组后,返回数组。原创 2024-09-04 19:53:10 · 788 阅读 · 0 评论 -
从字节面试题中学回溯
给你一个字符串s,请你将s分割成一些子串,使每个子串都是。返回s所有可能的分割方案。是正着读和反着读都一样的字符串。原创 2024-09-04 17:02:38 · 1143 阅读 · 0 评论 -
字节微软阿里面试题——700. 二叉搜索树中的搜索
给定二叉搜索树(BST)的根节点root和一个整数值val。你需要在 BST 中找到节点值等于val的节点。返回以该节点为根的子树。如果节点不存在,则返回null。[1, 5000]原创 2024-09-03 17:01:10 · 375 阅读 · 0 评论 -
字节阿里面试题——530. 二叉搜索树的最小绝对差
给你一个二叉搜索树的根节点root,返回。差值是一个正数,其数值等于两值之差的绝对值。:本题与 783 https://leetcode-cn.com/problems/minimum-distance-between-bst-nodes/ 相同。原创 2024-09-03 16:51:08 · 377 阅读 · 0 评论 -
字节微软面试题——701. 二叉搜索树中的插入操作
给定二叉搜索树(BST)的根节点root和要插入树中的值value,将值插入二叉搜索树。返回插入后二叉搜索树的根节点。输入数据,新值和原始二叉搜索树中的任意节点值都不同。,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。你可以返回。原创 2024-09-03 16:35:14 · 430 阅读 · 0 评论 -
字节微软阿里面试题——450. 删除二叉搜索树中的节点
给定一个二叉搜索树的根节点和一个值,删除二叉搜索树中的对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。[0, 104]root要求算法时间复杂度为 O(h),h 为树的高度。原创 2024-09-03 16:05:21 · 254 阅读 · 0 评论 -
字节面试题——669. 修剪二叉搜索树
给你二叉搜索树的根节点root,同时给定最小边界low和最大边界high。通过修剪二叉搜索树,使得所有节点的值在中。修剪树改变保留在树中的元素的相对结构 (即,如果没有被移除,原有的父代子代关系都应当保留)。可以证明,存在。所以结果应当返回修剪好的二叉搜索树的新的根节点。注意,根节点可能会根据给定的边界发生改变。[1, 10^4]原创 2024-09-03 15:44:35 · 729 阅读 · 0 评论 -
字节快手面试题——538. 把二叉搜索树转换为累加树
给出二叉树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点node的新值等于原树中大于或等于node.val的值之和。:本题和 1038: https://leetcode-cn.com/problems/binary-search-tree-to-greater-sum-tree/ 相同010^4-10^410^4。原创 2024-09-03 15:18:26 · 371 阅读 · 0 评论 -
字节腾讯面试题——77. 组合
给定两个整数n和k,返回范围[1, n]中所有可能的k个数的组合。原创 2024-09-03 14:36:13 · 322 阅读 · 0 评论 -
字节面试题——377. 组合总和 Ⅳ
给你一个由整数组成的数组nums,和一个目标整数target。请你从nums中找出并返回总和为target的元素组合的个数。题目数据保证答案符合 32 位整数范围。:如果给定的数组中含有负数会发生什么?问题会产生何种变化?如果允许负数出现,需要向题目中添加哪些限制条件?原创 2024-09-03 14:27:07 · 1116 阅读 · 0 评论 -
字节面试题——216. 组合总和 III
找出所有相加之和为n的k返回所有可能的有效组合的列表。该列表不能包含相同的组合两次,组合可以以任何顺序返回。原创 2024-09-03 14:08:29 · 849 阅读 · 0 评论 -
字节面试题——17. 电话号码的字母组合
给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。['2', '9']原创 2024-09-03 13:56:24 · 917 阅读 · 0 评论 -
字节阿里面试题——226. 翻转二叉树
给你一棵二叉树的根节点root,翻转这棵二叉树,并返回其根节点。[0, 100]原创 2024-09-03 13:06:05 · 398 阅读 · 0 评论 -
字节微软快手面试题——150. 逆波兰表达式求值
给你一个字符串数组tokens,表示一个根据表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。'+''-''*''/'"+""-""*""/"逆波兰表达式是一种后缀表达式,所谓后缀就是指算符写在后面。原创 2024-09-02 22:20:24 · 368 阅读 · 0 评论 -
字节美团面试题——1209. 删除字符串中的所有相邻重复项 II
给你一个字符串s,「k倍重复项删除操作」将会从s中选择k个相邻且相等的字母,并删除它们,使被删去的字符串的左侧和右侧连在一起。你需要对s重复进行无限次这样的删除操作,直到无法继续为止。在执行完所有删除操作后,返回最终得到的字符串。本题答案保证唯一。原创 2024-09-02 22:10:27 · 291 阅读 · 0 评论 -
字节阿里面试题——225. 用队列实现栈
请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(pushtoppop和empty实现MyStackint pop()int top()truefalsesizeis empty100pushpoptopemptypoptop:你能否仅用一个队列来实现栈。原创 2024-09-02 19:32:39 · 2049 阅读 · 0 评论 -
字节微软面试题——459. 重复的子字符串
给定一个非空的字符串s,检查是否可以通过由它的一个子串重复多次构成。原创 2024-09-02 18:30:41 · 456 阅读 · 0 评论 -
字节美团面试题——LCR 182. 动态口令
某公司门禁密码使用动态口令技术。初始密码为字符串passwordtargetpasswordtarget请返回更新后的密码字符串。原创 2024-09-02 17:09:32 · 261 阅读 · 0 评论 -
字节美团面试题——LCR 122. 路径加密
假定一段路径记作字符串path,其中以 “” 作为分隔符。现需将路径加密,加密方法为将path中的分隔符替换为空格 "",请返回加密后的字符串。原创 2024-09-02 16:47:26 · 328 阅读 · 0 评论 -
字节阿里快手腾讯面试题——344. 反转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须修改输入数组、使用 O(1) 的额外空间解决这一问题。原创 2024-09-02 16:41:11 · 163 阅读 · 0 评论 -
字节面试题——383. 赎金信
ransomNote和magazine,判断ransomNote能不能由magazine里面的字符构成。如果可以,返回true;否则返回false。原创 2024-09-02 16:35:48 · 855 阅读 · 0 评论 -
字节阿里面试题——454. 四数相加 II
给你四个整数数组nums1nums2nums3和nums4,数组长度都是n,请你计算有多少个元组。原创 2024-09-02 15:53:56 · 176 阅读 · 0 评论 -
字节微软阿里腾讯快手面试题——349. 两个数组的交集
给定两个数组nums1和nums2,返回它们的交集。输出结果中的每个元素一定是的。我们可以。原创 2024-09-02 15:47:43 · 1014 阅读 · 0 评论 -
字节美团面试题——707. 设计链表
你可以选择使用单链表或者双链表,设计并实现自己的链表。val和next。val是当前节点的值,next是指向下一个节点的指针/引用。如果是双向链表,则还需要属性prev以指示链表中的上一个节点。假设链表中的所有节点下标从开始。实现index-1valvalvalindexindexindexindexgetaddAtHeadaddAtTailaddAtIndex2000。原创 2024-09-02 15:22:10 · 1032 阅读 · 0 评论 -
1004. 最大连续1的个数 III
给定一个二进制数组nums和一个整数k,如果可以翻转最多k个0,则返回数组中连续1的最大个数。原创 2024-08-30 17:30:25 · 805 阅读 · 0 评论 -
91. 解码方法
一条包含字母A-Z的消息通过以下映射进行了要已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。例如,"11106""AAJF"(11 10 6)注意,消息不能分组为(1 11 06),因为"06"不能映射为"F",这是由于"6"和"06"在映射中并不等价。给你一个只含数字的字符串s,请计算并返回方法的。题目数据保证答案肯定是一个的整数。原创 2024-08-30 17:14:49 · 253 阅读 · 0 评论 -
96. 不同的二叉搜索树
给你一个整数n,求恰由n个节点组成且节点值从1到n互不相同的有多少种?返回满足题意的二叉搜索树的种数。原创 2024-08-30 16:37:24 · 541 阅读 · 0 评论 -
279. 完全平方数
给你一个整数n,返回和为n的完全平方数的最少数量。是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,149和16都是完全平方数,而3和11不是。原创 2024-08-30 12:50:09 · 327 阅读 · 0 评论 -
55. 跳跃游戏
给定一个非负整数数组nums,你最初位于数组的。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。原创 2024-08-30 11:30:33 · 210 阅读 · 0 评论 -
227. 基本计算器 II
给你一个字符串表达式s,请你实现一个基本计算器来计算并返回它的值。整数除法仅保留整数部分。你可以假设给定的表达式总是有效的。所有中间结果将在的范围内。:不允许使用任何将字符串作为数学表达式计算的内置函数,比如eval()。原创 2024-08-30 10:57:15 · 312 阅读 · 0 评论 -
400. 第 N 位数字
是200,那么我们就知道它一定是三位数,且它是三位数里的第200−9−180=11位,转换成从0开始的索引就是11-1=10。三位数是每三位一个数,那么它就是三位数里的第10/3=3个,也就是103。而我们要找该数里的10%3=1位也就是0。我们要知道第n位是什么,其实就是要找它属于几位数,它在那位数里是第多少个数,以及最终要找是该位数的第几位。一位数(9个),两位数(180个),三位数(2700个), 假如。Java等语言中注意一下溢出处理。,请你在无限的整数序列。原创 2024-08-29 17:23:53 · 232 阅读 · 0 评论 -
27. 移除元素
给你一个数组nums和一个值val,你需要移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。原创 2024-08-29 15:20:14 · 216 阅读 · 0 评论 -
795. 区间子数组个数
给你一个整数数组numsleft及right。找出nums中连续、非空且其中最大元素在范围内的子数组,并返回满足条件的子数组的个数。生成的测试用例保证结果符合整数范围。原创 2024-08-29 14:24:41 · 215 阅读 · 0 评论 -
474. 一和零
给你一个二进制字符串数组strs和两个整数m和n。请你找出并返回strs的最大子集的长度,该子集中有m个0和n个1。如果x的所有元素也是y的元素,集合x是集合y的。'0''1'原创 2024-08-29 13:44:39 · 649 阅读 · 0 评论