自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录算法训练营第四十一天 |98. 所有可达路径

有两条路径 0 -> 1 -> 3 和 0 -> 2 -> 3。可以访问的所有节点的列表(即从节点。,请你找出所有从节点。

2024-07-25 22:13:44 292

原创 代码随想录算法训练营第四十天 | 42. 接雨水 84.柱状图中最大的矩形

上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。第 i = 0 步操作中,我们将位置 1 处的石块移到位置 2 处,位置 2,6,7,8 有石块。第 i = 1 步操作中,我们将位置 7 处的石块移到位置 9 处,位置 2,6,8,9 有石块。第 i = 2 步操作中,我们将位置 2 处的石块移到位置 5 处,位置 5,6,8,9 有石块。最后,至少有一个石块的位置为 [5,6,8,9]。次操作中,你将位置在。

2024-07-24 21:58:03 366

原创 代码随想录算法训练营第三十九天 | 739. 每日温度 496.下一个更大元素 I 503.下一个更大元素II

是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。天,下一个更高温度出现在几天后。- 2 ,用加粗斜体标识,nums2 = [1,3,4,第二个 1 的下一个最大的数需要循环搜索,结果也是 2。如果不存在下一个更大元素,那么本次查询的答案是。- 4 ,用加粗斜体标识,nums2 = [1,3,不存在下一个更大元素,所以答案是 -1。不存在下一个更大元素,所以答案是 -1。下一个更大元素是 3。第一个 1 的下一个更大的数是 2;

2024-07-23 21:34:21 381

原创 代码随想录算法训练营第三十八天 | 647. 回文子串 516.最长回文子序列

子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。,找出其中最长的回文子序列,并返回该序列的长度。一个可能的最长回文子序列为 "bbbb"。三个回文子串: "a", "b", "c"是字符串中的由连续字符组成的一个序列。是正着读和倒过来读一样的字符串。,请你统计并返回这个字符串中。为什么这样不会上溢出?

2024-07-22 20:56:58 265

原创 代码随想录算法训练营第三十七天 | 115.不同的子序列 583. 两个字符串的删除操作 72. 编辑距离

第一步将 "sea" 变为 "ea" ,第二步将 "eat "变为 "ea"horse -> rorse (将 'h' 替换为 'r')出现的个数,结果需要对 109 + 7 取模。rorse -> rose (删除 'r')如下所示, 有 3 种可以从 s 中得到。rose -> ros (删除 'e')可以删除任意一个字符串中的一个字符。

2024-07-21 18:26:58 417

原创 代码随想录算法训练营第三十六天 |1143.最长公共子序列 1035.不相交的线 53. 最大子序和 392.判断子序列

但无法画出第三条不相交的直线,因为从 nums1[1]=4 到 nums2[2]=4 的直线将与从 nums1[2]=2 到 nums2[1]=2 的直线相交。如果有大量输入的 S,称作 S1, S2, ... , Sk 其中 k >= 10亿,你需要依次检查它们是否为 T 的子序列。是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。

2024-07-21 17:12:53 366

原创 代码随想录算法训练营第三十五天 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组

尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为 5 和 7 在原数组里被 4 隔开。是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。最长递增子序列是 [2,3,7,101],因此长度为 4。最长连续递增序列是 [1,3,5], 长度为3。长度最长的公共子数组是 [3,2,1]。,找到其中最长严格递增子序列的长度。给定一个未经排序的整数数组,找到最长且。、长度最长的子数组的长度。,并返回该序列的长度。)确定,如果对于每个。就是连续递增子序列。

2024-07-21 14:32:33 303

原创 代码随想录算法训练营第三十四天 | 188.买卖股票的最佳时机IV 309.最佳买卖股票时机含冷冻期 714.买卖股票的最佳时机含手续费

在第 1 天 (股票价格 = 2) 的时候买入,在第 2 天 (股票价格 = 4) 的时候卖出,这笔交易所能获得利润 = 4-2 = 2。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。总利润: ((8 - 1) - 2) + ((9 - 4) - 2) = 8。你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。返回获得利润的最大值。

2024-07-21 00:02:17 419

原创 代码随想录算法训练营第三十三天 | 121. 买卖股票的最佳时机 122.买卖股票的最佳时机II 123.买卖股票的最佳时机III

随后,在第 7 天(股票价格 = 1)的时候买入,在第 8 天 (股票价格 = 4)的时候卖出,这笔交易所能获得利润 = 4-1 = 3。随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6 - 3 = 3。在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3-0 = 3。同时,你不能在买入前卖出股票。你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。

2024-07-20 22:49:52 318

原创 代码随想录算法训练营第三十二天 | 198.打家劫舍 213.打家劫舍II 337.打家劫舍III

一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2), 因为他们是相邻的。你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都。同时,相邻的房屋装有相互连通的防盗系统,偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号房屋 (金额 = 3)。

2024-07-20 17:05:13 349

原创 代码随想录算法训练营第三十一天 | 322. 零钱兑换 279.完全平方数 139.单词拆分

返回 true 因为 "leetcode" 可以由 "leet" 和 "code" 拼接成。是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。如果可以利用字典中出现的一个或多个单词拼接出。如果没有任何一种硬币组合能组成总金额,返回。,表示不同面额的硬币;你可以认为每种硬币的数量是无限的。计算并返回可以凑成总金额所需的。的完全平方数的最少数量。

2024-07-15 21:19:56 230 1

原创 代码随想录算法训练营第三十一天 | 518. 零钱兑换 II 377. 组合总和 Ⅳ 70. 爬楼梯 (进阶)

52. 携带研究材料(第七期模拟笔试)

2024-07-13 19:27:19 501

原创 代码随想录算法训练营第三十一天 |1049. 最后一块石头的重量 II 494. 目标和 474.一和零

其他满足题意但较小的子集包括 {"0001","1"} 和 {"10","1","0"}。最多有 5 个 0 和 3 个 1 的最大子集是 {"10","0001","1","0"} ,因此答案是 4。组合 2 和 4,得到 2,所以数组转化为 [2,7,1,8,1],组合 1 和 1,得到 0,所以数组转化为 [1],这就是最优值。组合 7 和 8,得到 1,所以数组转化为 [2,1,1,1],组合 2 和 1,得到 1,所以数组转化为 [1,1,1],,然后串联起所有整数,可以构造一个。

2024-07-11 21:09:30 482

原创 代码随想录算法训练营第三十天 | 01背包问题 二维 01背包问题 一维 416. 分割等和子集

46. 携带研究材料(第六期模拟笔试)

2024-07-10 22:42:51 295

原创 代码随想录算法训练营第二十九天 | 62.不同路径 63. 不同路径 II 343.整数拆分 96.不同的二叉搜索树

机器人试图达到网格的右下角(在下图中标记为 “Finish” )。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。那么从左上角到右下角将会有多少条不同的路径?网格的左上角 (起始点在下图中标记为 “Start” )。网格的左上角 (起始点在下图中标记为 “Start” )。1. 向右 -> 向右 -> 向下 -> 向下。2. 向下 -> 向下 -> 向右 -> 向右。返回满足题意的二叉搜索树的种数。3x3 网格的正中间有一个障碍物。),并使这些整数的乘积最大化。问总共有多少条不同的路径?

2024-07-09 21:58:13 492

原创 代码随想录算法训练营第二十八天 | 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯

个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。F(n) = F(n - 1) + F(n - 2),其中 n > 1。开始,后面的每一项数字都是前面两项数字的和。- 支付 15 ,向上爬两个台阶,到达楼梯顶部。你有多少种不同的方法可以爬到楼顶呢?请你计算并返回达到楼梯顶部的最低花费。你将从下标为 1 的台阶开始。表示)形成的序列称为。有两种方法可以爬到楼顶。1. 1 阶 + 1 阶。

2024-07-08 20:57:37 347

原创 代码随想录算法训练营第二十七天 |56. 合并区间 738.单调递增的数字 968.监控二叉树 (可跳过)

区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。给定一个二叉树,我们在树的节点上安装摄像头。计算监控树的所有节点所需的最小摄像头数量。表示若干个区间的集合,其中单个区间为。如图所示,一台摄像头足以监控所有节点。请你合并所有重叠的区间,并返回。当且仅当每个相邻位数上的数字。节点上的每个摄影头都可以监视。的最大数字,且数字呈。时,我们称这个整数是。

2024-07-07 22:10:43 332

原创 代码随想录算法训练营第二十六天 |452. 用最少数量的箭引爆气球 435. 无重叠区间 763.划分字母区间

像 "ababcbacadefegde", "hijhklij" 这样的划分是错误的,因为划分的片段数较少。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。今天的题都有点意思,不看解析是不会写的,看了解析发现还是比较简单的。-在x = 11处发射箭,击破气球[10,16]和[7,12]。-在x = 6处射出箭,击破气球[2,8]和[1,6]。处射出一支箭,若有一个气球的直径的开始和结束坐标为。移除 [1,3] 后,剩下的区间没有重叠。返回一个表示每个字符串片段的长度的列表。

2024-07-06 17:19:10 315

原创 代码随想录算法训练营第二十五天 | 134. 加油站 135. 分发糖果 860.柠檬水找零 406.根据身高重建队列

第 5 位顾客那里,我们找还一张 10 美元的钞票和一张 5 美元的钞票。,如果你可以按顺序绕环路行驶一周,则返回出发时加油站的编号,否则返回。第 4 位顾客那里,我们收取一张 10 美元的钞票,并返还 5 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付。前 3 位顾客那里,我们按顺序收取 3 张 5 美元的钞票。如果你能给每位顾客正确找零,返回。你从其中的一个加油站出发,开始时油箱为空。请你给每个孩子分发糖果,计算并返回需要准备的。顾客排队购买你的产品,(按账单。

2024-07-04 21:07:23 469

原创 代码随想录算法训练营第二十五天 | 122.买卖股票的最佳时机II 55. 跳跃游戏 45.跳跃游戏II 1005.K次取反后最大化的数组和

随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6 - 3 = 3。在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5 - 1 = 4。可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。从下标为 0 跳到下标为 1 的位置,跳。判断你是否能够到达最后一个下标,如果可以,返回。

2024-07-03 21:15:35 384

原创 代码随想录算法训练营第二十四天 |455.分发饼干 376. 摆动序列 53. 最大子序和

假设你是一位很棒的家长,想要给你的孩子们一些小饼干。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。整个序列均为摆动序列,各元素之间的差值为 (6, -3, 5, -7, 3)。,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。虽然你有两块小饼干,由于他们的尺寸都是1,你只能让胃口值是1的孩子满足。你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。,这是能让孩子们满足胃口的饼干的最小尺寸;连续子数组 [4,-1,2,1] 的和最大,为 6。

2024-07-02 22:10:15 448

原创 代码随想录算法训练营第二十三天 |491.递增子序列 46.全排列 47.全排列 II 332.重新安排行程 51.N皇后 37.解数独

需要把used一起传入进去,这个我没理解到位。这题好抽象啊,下去多看看。在老问题上又一次出错了。

2024-07-01 21:57:51 192

原创 代码随想录算法训练营第二十二天 |93.复原IP地址 78.子集 90.子集II

注意非法的几种情况,以及添加逗号后的处理。简单,前面好像有个类似的。

2024-06-30 15:26:49 196

原创 代码随想录算法训练营第二十一天 | 39. 组合总和 40.组合总和II 131.分割回文串

回文串的判断还是比较复杂的,特别需要注意的就是那个continue。注意取数时候的去重操作,去处的是同义词的重复元素。为了防止额外数据有很多细节,注意仔细看清楚。

2024-06-30 14:31:01 318

原创 代码随想录算法训练营第二十天 | 77. 组合 216.组合总和III 17.电话号码的字母组合

注意回溯的退出条件以及递归的方法,并且可以进行一些剪枝,就是在for循环中设置。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。该列表不能包含相同的组合两次,组合可以以任何顺序返回。细节都在代码里了,就是需要创建一个map,根据map去递归。的字符串,返回所有它能表示的字母组合。跟上一题一样,感觉还是比较简单的。少进行一些递归操作,提前结束。所有可能的有效组合的列表。没有其他符合的组合了。

2024-06-30 13:23:32 625

原创 代码随想录算法训练营第十九天 |669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树

针对需要删除的结点进行处理,我一开始因为需要考虑很多因素,但其实递归只需要模拟最终结果,之后一层一层向上传递就可以了。改变保留在树中的元素的相对结构 (即,如果没有被移除,原有的父代子代关系都应当保留)。树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点。所以结果应当返回修剪好的二叉搜索树的新的根节点。注意,根节点可能会根据给定的边界发生改变。递归,根据区间构造BST就可以了,生成的自动都是平衡的。通过修剪二叉搜索树,使得所有节点的值在。

2024-06-29 21:59:53 417

原创 代码随想录算法训练营第十八天 | 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点

中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,null,3,5]对应的节点,并保证二叉搜索树的性质不变。一个正确的答案是 [5,4,6,2,null,null,7], 如下图所示。另一个正确答案是 [5,2,6,null,4,null,7]。给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。,删除二叉搜索树中的。

2024-06-29 21:18:20 1068

原创 代码随想录算法训练营第十七天 | 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先

中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(感觉本质上是使用返回值真假进行判断,后序遍历天然的适合回溯,这次的文档很有价值看看,特别是单数分支遍历和整树遍历的区别。注意中序遍历中间结点的处理逻辑,因为是需要统计所有最多的值,所以需要使用这种方法。给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。给你一个含重复值的二叉搜索树(BST)的根节点。因为根据定义最近公共祖先节点可以为节点本身。

2024-06-29 20:29:26 352

原创 代码随想录算法训练营第十六天| 654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树

合并的规则是:如果两个节点重叠,那么将这两个节点的值相加作为合并后节点的新值;- [3,2,1,6,0,5] 中的最大值是 6 ,左边部分是 [3,2,1] ,右边部分是 [0,5]。- [3,2,1] 中的最大值是 3 ,左边部分是 [] ,右边部分是 [2,1]。- [2,1] 中的最大值是 2 ,左边部分是 [] ,右边部分是 [1]。- [0,5] 中的最大值是 5 ,左边部分是 [0] ,右边部分是 []。- 空数组,无子节点。根节点的值是 5 ,但是右子节点的值是 4。

2024-06-23 18:50:23 778

原创 代码随想录算法训练营第十五天|路径总和 从中序与后序遍历序列构造二叉树

不存在 sum = 5 的根节点到叶子节点的路径。由于树是空的,所以不存在根节点到叶子节点的路径。的路径,这条路径上所有节点值相加等于目标和。是同一棵树的后序遍历,请你构造并返回这颗。等于目标和的根节点到叶节点路径如上图所示。路径总和等于给定目标和的路径。(1 --> 2): 和为 3。(1 --> 3): 和为 4。,请构造二叉树并返回其根节点。和一个表示目标和的整数。是指没有子节点的节点。是指没有子节点的节点。是二叉树的中序遍历,

2024-06-23 14:04:22 704

原创 代码随想录算法训练营第十四天|

返回所有从根节点到叶子节点的路径。给定一个二叉树,判断它是否是。今天状态不好,先欠两道。给你一个二叉树的根节点。是指没有子节点的节点。

2024-06-20 23:26:53 285

原创 代码随想录算法训练营第十三天 | 226.翻转二叉树101. 对称二叉树 104.二叉树的最大深度 111.二叉树的最小深度

最小深度是从根节点到最近叶子节点的最短路径上的节点数量。是指从根节点到最远叶子节点的最长路径上的节点数。,翻转这棵二叉树,并返回其根节点。今天都是重复的题,都还比较简单。给定一个二叉树,找出其最小深度。叶子节点是指没有子节点的节点。写这题差点又忘了判空的状态。给你一棵二叉树的根节点。给你一个二叉树的根节点。, 检查它是否轴对称。递归法简单,层次遍历直观。

2024-06-19 21:06:30 422

原创 代码随想录算法训练营第十二天 | 二叉树基础

第 0 层的平均值为 3,第 1 层的平均值为 14.5,第 2 层的平均值为 11。,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。果然还是用层序遍历好一些,这种方法处理不了这种情况,并且递归法太低效了。今天好多题,虽然挺简单,抵不住多啊,又写到12点了,歇了。, 以数组的形式返回每一层节点的平均值。因此返回 [3, 14.5, 11]。给定一个非空二叉树的根节点。以内的答案可以被接受。

2024-06-18 23:23:15 372 1

原创 代码随想录算法训练营第十一天 |150. 逆波兰表达式求值239. 滑动窗口最大值

就是408里的后缀表达式,不需要判断非法情况,还是比较简单的,需要注意字符串和字符的" "和' '注意区分一下。该算式转化为常见的中缀算术表达式为:(4 + (13 / 5)) = 6。的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的。该算式转化为常见的中缀算术表达式为:((2 + 1) * 3) = 9。滑动窗口的位置 最大值。返回一个表示表达式值的整数。滑动窗口每次只向右移动一位。,请你返回其中出现频率前。

2024-06-17 21:30:43 599

原创 代码随想录算法训练营第十天|28. 找出字符串中第一个匹配项的下标459. 重复的子字符串232.用栈实现队列 225. 用队列实现栈 20. 有效的括号 1047. 删除字符串中的所有相邻重复项

例如,在 "abbaca" 中,我们可以删除 "bb" 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 "aaca",其中又只有 "aa" 可以执行重复项删除操作,所以最后的字符串为 "ca"。请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作("leeto" 没有在 "leetcode" 中出现,所以返回 -1。字符串的第一个匹配项的下标(下标从 0 开始)。第一个匹配项的下标是 0 ,所以返回 0。可由子串 "ab" 重复两次构成。

2024-06-15 19:43:47 987

原创 代码随想录算法训练营第八天|151.翻转字符串里的单词 55.右旋转字符串 28. 实现 strStr() 459.重复的子字符串

周五!多美好的夜晚啊,结束了一周的工作,迎来了周末,好想休息,但是还是先把题写了吧KMP明天再说吧给你一个字符串s,请你反转字符串中的顺序。是由非空格字符组成的字符串。s中使用至少一个空格将字符串中的分隔开。返回顺序颠倒且之间用单个空格连接的结果字符串。输入字符串s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。s = "反转后的字符串中不能存在前导空格和尾随空格。

2024-06-14 22:39:49 200

原创 代码随想录算法训练营第八天|344.反转字符串 541. 反转字符串II卡码网:54.替换数字

今天的都简单编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须、使用 O(1) 的额外空间解决这一问题。好简单。

2024-06-13 21:10:34 596

原创 代码随想录算法训练营第七天|454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和

不同的三元组是 [-1,0,1] 和 [-1,-1,2]。今天的题好难,写了很长时间,这还是在公交车上提前看过了的。我真的服了,为什么要这样才可以运行,好好看看注释掉的地方。服了,这个题好多细节,去重,long都需要关注。注意,输出的顺序和三元组的顺序并不重要。请你找出并返回满足下述全部条件且。答案中不可以包含重复的三元组。唯一可能的三元组和不为 0。唯一可能的三元组和为 0。,请你计算有多少个元组。,判断是否存在三元组。

2024-06-12 22:31:56 1200

原创 代码随想录算法训练营第六天 |242. 有效的字母异位词

感觉很多的题都有思路,但是一些具体的细节总是写不好,特别是一些数据结构的创建,插入删除等操作写的不好,以后要多看看这些方面。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。注意不要用数组输出,会输出重复元素,最好还是用哈希表换格式后输出。错误写法,注意不要提前写入,会导致报错问题。中每个字符出现的次数都相同,则称。整数,并返回它们的数组下标。,编写一个函数来判断。,请你在该数组中找出。

2024-06-11 22:12:10 495

原创 代码随想录算法训练营第四天 |24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 面试题 02.07. 链表相交 142.环形链表II

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。从各自的表头开始算起,链表 A 为 [4,1,8,4,5],链表 B 为 [5,0,1,8,4,5]。思路就是先统计两个链表的长度,得到差值,然后调整起始位置,一起向后,直到遇到相同的结点为止。从各自的表头开始算起,链表 A 为 [0,9,1,2,4],链表 B 为 [3,2,4]。从各自的表头开始算起,链表 A 为 [2,6,4],链表 B 为 [1,5]。相交节点的值为 2 (注意,如果两个链表相交则不能为 0)。

2024-06-09 20:36:30 955

空空如也

空空如也

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

TA关注的人

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