Problem: 833. 字符串中的查找与替换
思路这道题需要考虑到的细节主要有两点:
target中被替换的字符串的长度会与原子字符串不同,从而导致原字符串对应的下标发生变化,例如abc将a替换为aaa,则b的下标会从1变为3
由于替换是...
魔鬼数字用有意义的常量代替字面量数字
便于理解和替换
常用枚举类型代替枚举含义的变量
典型的反例是C中习惯用return 0表示正确执行
对于局部的字面量可以只用注释说明,如单位换算没必要用常量替换10/100/1000等...
Problem: 1749. 任意子数组和的绝对值的最大值
思路考虑以结尾的子数组和的最大绝对值,有两种情况
以结尾的子数组的最大和
以结尾的子数组的最小和的绝对值
设为以结尾的子数组的最大和,为以结尾的子数组的最小和
以求子数组最大和为例...
Problem: 722. 删除注释
思路直接模拟即可
为了方便注释的处理,这里没有用index in statement.indices()而是传统地创建了一个变量var index=0然后令while(index<statement....
Problem: 142. 环形链表 II
思路设经过n次循环后slow和fast相遇,则此时
slow走了步
fast走了步
设slow在环内走了步,则slow在环外走了步
fast的路径:
环外->环内slow走的路径->...
Problem: 2050. 并行课程 III
思路拓扑排序拓扑排序的思路是基于广度优先搜索的一种变体
对每个节点设置一张出度表(记录指向的所有节点)和一张入度表(仅记录入度的数值本身),设置一个队列记录当前入度为0的点(已无其他前置课程的可选...
Problem: 2569. 更新数组后处理求和查询
思路基于线段树,待补充
复杂度时间复杂度:
空间复杂度:
Code1234567891011121314151617181920212223242526272829303132333...
Problem: 124. 二叉树中的最大路径和
思路设searchTree(node:TreeNode?):Int返回的是以当前节点为根节点的子树的最大链表路径和
当我们考虑最大路径和时,可以考虑根节点为中间节点,拼接左节点路径和右节点路径...
Problem: 918. 环形子数组的最大和
思路官方题解的这张图片很好的解释了这道题:
一是要求这个数组的连续子数组最大和
二是要求这个数组的一段以0起始的子数组和一段以n结尾的子数组的最大和
第一点我们可以很简单地53. 最大子数组和...
原题地址:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-iv/description/
题解买入和卖出实际上是一系列顺序固定的连续操作:
第0次卖出(第二次操作)必然在第...