
leetcode
文章平均质量分 86
&u204
这个作者很懒,什么都没留下…
展开
-
算法题目整合5
思路:利用left和right记录连续相同的字符串索引,计算长度len,如果是0,1,2,4这种情况直接输出-1并return。如果是奇数直接输出,如果是偶数的话,可以拆成3和len-3两个部分。的最小值是101100,求其第4554小即在从后数的四个问号位置分别加上‘3’,‘5’,‘5’,‘4’即可,即551153;表示当前卡牌正面(或反面)加上上一个取余结果再对3取余的值,举个例子,比如说。),由于不同的取余方案搭配上正反面的组合,共有6中结果,所以在。,表示当前卡牌正面为1,当遍历的。原创 2024-07-23 17:36:37 · 1101 阅读 · 0 评论 -
算法题目整合4
三个元素都保证了replacePre这个变量记录的是替换后的「连续子数组的最大和」。思路:就是leetcode210:课程表II的原题,换了个名词而已,直接bfs拓扑排序。leetcode239题变形,采用两个PriorityQueue即可,注意数据的读取。由于最多只能改变一次值,所以我们可以用一个replacePre变量记录改变后的最大值。第二个元素表示未替换过的最大值加上需要替换的数字;了,所以接下来还需要考虑替换的情况,那就是令。第三个元素表示替换过的最大值加上正常的数字。如果是笔试,可以直接利用。原创 2024-07-22 23:15:09 · 1111 阅读 · 0 评论 -
算法题目整合3
构造有向图的领接表,然后利用dfs求解,每次选择编号最小的叶子结点+1,返回时也是将最小编号返回(需要和当前start进行比较)排列的个数等于每个数字出现的个数的乘积,计算每个数个数字出现的乘积,然后再累加即可。rowMin表示从左边到达的最小值,当前位置不是’表示不可达,所以就需要进行判断三个可能的方向。colMin表示从上边到达的最小值。'时,每次循环会对其进行更新。列需要的最小步数,需要注意。很显然的动态规划题,原创 2024-07-21 15:43:11 · 652 阅读 · 0 评论 -
算法题目整合2
利用dfs进行求解,本质上就是求岛屿数量问题leetcode200,只不过需要自己进行建图处理。构建一个环形链表,距离需要用。dfs+List记录相邻节点。原创 2024-07-19 15:32:07 · 178 阅读 · 0 评论 -
算法题目整合
小红拿到了两个长度为 n 的数组 a 和 b,她仅可以执行一次以下翻转操作:选择a数组中的一个区间[i, j],(i!例如,对于 a = [2,3,4,1,5,6],小红可以选择左闭右闭区间[2,4],数组 a 则变成[2,3,5,1,4,6]。思路:考虑先找到满足条件的最大left索引和最小right索引,然后进行循环:每次循环left–,right++,如果说A[left]==B[right],说明翻转后还是相同,直到两者不等,那么此时就可以break了。初始 a 数组和 b 数组必定不相同。原创 2024-07-17 19:08:56 · 697 阅读 · 0 评论 -
leetcode05
设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。MinStack()初始化堆栈对象。将元素val推入堆栈。void pop()删除堆栈顶部的元素。int top()获取堆栈顶部的元素。获取堆栈中的最小元素。使用辅助栈的解法,空间复杂度On不使用辅助栈的方法,空间复杂度O1。原创 2024-07-03 14:42:16 · 213 阅读 · 0 评论 -
leetcode04
方法获取的是队列的头部节点值,而。不实用辅助栈的方法,空间复杂度。使用辅助栈的解法,空间复杂度。方法获取的是栈的顶部值!原创 2024-05-21 01:05:36 · 243 阅读 · 0 评论 -
[leetcode]03
排序完成后就是建立答案的集合,如果集合为空,就先将数组第一个元素放进去,如果不为空就进行比较:若当前区间的左边比答案最右边区间的右边还大(例如interval为[3,5],但是res最右边的元素为[1,2]),那么就添加这个区间进入集合。解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。输入:head = [[7,null],[13,0],[11,4],[10,2],[1,0]]那么这种情况是合理的吗?输出:[[7,null],[13,0],[11,4],[10,2],[1,0]]原创 2024-05-02 22:02:47 · 1001 阅读 · 1 评论 -
[leetcode02]
记录leetcode刷题的笔记,参考了leetcode的高赞答案和官方解答.原创 2024-04-26 12:51:12 · 647 阅读 · 1 评论 -
[leetcode]01
给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。可以按任意顺序返回结果列表。输入:{1,3,5},{2,4,6},返回{1,2,3,4,5,6}输入:{1,2,3,4,5},2,4,返回{1,4,3,2,5}原创 2024-04-22 18:29:08 · 952 阅读 · 0 评论