![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题记录
以算法题解思路为引,学习数据结构,增加算法能力。
只是六号z
请保持那份热爱,来奔赴下一场山海。
展开
-
并查集板子
并查集模板原创 2022-12-04 13:52:54 · 322 阅读 · 1 评论 -
力扣周赛310场题解
力扣周赛310场前两道题题解原创 2022-09-11 15:56:56 · 499 阅读 · 0 评论 -
102. 二叉树的层序遍历(二叉树系列)
二叉树的层序遍历原创 2022-06-11 21:23:25 · 233 阅读 · 0 评论 -
Java实现并查集
并查集前言做算法题的时候遇到了一个题:蓝桥幼儿园。需要使用并查集来解决,但是当时就是感觉有思路,但是不知道如何实现,于是去网上找了题解,了解到并查集这种解题方式,自己也想写一篇博客来记录一下。我是参考的这篇,讲的也是比较详细。并查集(Java实现)一、蓝桥幼儿园题目描述蓝桥幼儿园的学生是如此的天真无邪,以至于对他们来说,朋友的朋友就是自己的朋友。小明是蓝桥幼儿园的老师,这天他决定为学生们举办一个交友...原创 2022-06-07 23:12:10 · 236 阅读 · 0 评论 -
力扣刷题 77. 组合
77.组合前言一、回溯二、组合数前言最近也是在学习回溯算法,在哔哩哔哩上看到了一个视频讲的很不错,就是集数有点少,这里把链接分享给你们。回溯算法 77.组合一、回溯回溯的基本概念这里就不再去讲述了,需要的可以自己去详细了解。下面就是代码随想录总结的回溯题的模板,感觉跟着这个思路去做题,思路还是很清晰的。解题:void backtracking(参数 ) { if(终止条件){ 收集结果; } for(集合元素集){ 处理节点; 递归函数 bac原创 2022-04-11 22:02:26 · 88 阅读 · 0 评论 -
动态规划简单思路及例子(二)
简单动态规划以及举例二前言题目代码实现前言这篇文章可以说是上篇文章的继续吧,因为这两类问题都是不同路径的问题,区别只是机器人路径中有没有进行障碍物,如果对这个还不太了解的话,可以看我的前一篇文章。动态规划简单思路及例子(一)题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/unique-paths-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码实现其他的就不多说了,因为题目都差不多,注释也比较齐全,直原创 2022-04-05 15:39:37 · 1064 阅读 · 0 评论 -
动态规划简单思路及例子
简单动态规划以及举例前言一、动态规划简单概念题型二、简单举例62. 不同路径代码前言最近也是在准备蓝桥杯,刷题刷到了动态规划这块,因为之前做题都是一知半解的,所以感觉这块也是比较难的,就下定决心学一下动态规划这块,但是学习过之后才发现,其实思路也是比较简单而且有规律的。下面就举个例子来说明一下动态规划的基本做题思路 。一、动态规划简单概念所谓动态规划就是通过动态填写表格得方式来解决问题。动态规划主要是需要找出动态转移方程。可以使用打表分析的方式来进行分析。题型动态规划基础背包问题原创 2022-04-05 15:01:13 · 266 阅读 · 0 评论 -
dfs记忆搜索化 例题演示
dfs + 记忆搜索化题目描述输入格式输出格式解题代码题目描述Michael 喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael 想知道在一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子:1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10原创 2022-04-05 11:18:01 · 78 阅读 · 0 评论 -
剑指 Offer 28. 对称的二叉树
题目要求:请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。1/ 2 2/ \ / 3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:1/ 2 2\ 3 3示例 1:输入:root = [1,2,2,3,4,4,3]输出:true示例 2:输入:root = [1,2,2,null,3,null,3]输出:原创 2022-01-23 16:37:18 · 43 阅读 · 0 评论 -
剑指 Offer 27. 二叉树的镜像
题目要求:请完成一个函数,输入一个二叉树,该函数输出它的镜像。例如输入: 4/ 2 7/ \ / 1 3 6 9镜像输出: 4/ 7 2/ \ / 9 6 3 1示例 1:输入:root = [4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/er-cha-shu-de-jing-xiang-lcof著作原创 2022-01-23 13:30:34 · 47 阅读 · 0 评论 -
合并两个排序的链表
题目要求:输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。示例1:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/he-bing-liang-ge-pai-xu-de-lian-biao-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。问题分析:这道题很容原创 2022-01-22 19:39:01 · 263 阅读 · 0 评论 -
66. 加一
题目要求:给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入:digits = [1,2,3]输出:[1,2,4]解释:输入数组表示数字 123。示例 2:输入:digits = [4,3,2,1]输出:[4,3,2,2]解释:输入数组表示数字 4321。示例 3:输入:digits = [0]输出:[1]来源:力扣(LeetCo原创 2022-01-20 16:52:17 · 51 阅读 · 0 评论 -
剑指 Offer 14- I. 剪绳子
题目要求:给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m-1] 。请问 k[0]k[1]…*k[m-1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。示例 1:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1示例 2:输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 ×原创 2022-01-20 15:53:25 · 55 阅读 · 0 评论 -
剑指 Offer 07. 重建二叉树
题目要求:输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节点。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。示例 1:Input: preorder = [3,9,20,15,7], inorder = [9,3,15,20,7]Output: [3,9,20,null,null,15,7]示例 2:Input: preorder = [-1], inorder = [-1]Output: [-1]来源:力扣(LeetCode)链接:https://leetc原创 2022-01-19 17:05:32 · 44 阅读 · 0 评论 -
26. 删除有序数组中的重复项
给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝int len = removeDuplicates(num原创 2022-01-16 18:04:05 · 202 阅读 · 0 评论 -
剑指 Offer 12. 矩阵中的路径
题目要求:给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。例如,在下面的 3×4 的矩阵中包含单词 “ABCCED”(单词中的字母已标出)。示例 1:输入:board = [[“A”,“B”,“C”,“E”],[“S”,“F”,“C”,“S”],[“A”原创 2022-01-12 19:15:26 · 53 阅读 · 0 评论 -
剑指 Offer 04. 二维数组中的查找
题目要求:在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[[1, 4, 7, 11, 15],[2, 5, 8, 12, 19],[3, 6, 9, 16, 22],[10, 13, 14, 17, 24],[18, 21, 23, 26, 30]]给定 target = 5,返回 true。原创 2022-01-11 16:30:30 · 53 阅读 · 0 评论 -
825. 适龄的朋友
题目要求:在社交媒体网站上有 n 个用户。给你一个整数数组 ages ,其中 ages[i] 是第 i 个用户的年龄。如果下述任意一个条件为真,那么用户 x 将不会向用户 y(x != y)发送好友请求:age[y] <= 0.5 * age[x] + 7age[y] > age[x]age[y] > 100 && age[x] < 100否则,x 将会向 y 发送一条好友请求。注意,如果 x 向 y 发送一条好友请求,y 不必也向 x 发送一条好友请求原创 2021-12-28 13:35:14 · 248 阅读 · 0 评论 -
1078. Bigram 分词
题目要求:给出第一个词 first 和第二个词 second,考虑在某些文本 text 中可能以 “first second third” 形式出现的情况,其中 second 紧随 first 出现,third 紧随 second 出现。对于每种这样的情况,将第三个词 “third” 添加到答案中,并返回答案。示例 1:输入:text = “alice is a good girl she is a good student”, first = “a”, second = “good”输出:[“g原创 2021-12-26 13:43:18 · 161 阅读 · 0 评论 -
1609. 奇偶树
题目要求:如果一棵二叉树满足下述几个条件,则可以称为 奇偶树 :二叉树根节点所在层下标为 0 ,根的子节点所在层下标为 1 ,根的孙节点所在层下标为 2 ,依此类推。偶数下标 层上的所有节点的值都是 奇 整数,从左到右按顺序 严格递增奇数下标 层上的所有节点的值都是 偶 整数,从左到右按顺序 严格递减给你二叉树的根节点,如果二叉树为 奇偶树 ,则返回 true ,否则返回 false 。示例 1:输入:root = [1,10,4,3,null,7,9,12,8,6,null,null,2]原创 2021-12-25 14:03:48 · 240 阅读 · 0 评论 -
1705. 吃苹果的最大数目
题目要求:有一棵特殊的苹果树,一连 n 天,每天都可以长出若干个苹果。在第 i 天,树上会长出 apples[i] 个苹果,这些苹果将会在 days[i] 天后(也就是说,第 i + days[i] 天时)腐烂,变得无法食用。也可能有那么几天,树上不会长出新的苹果,此时用 apples[i] == 0 且 days[i] == 0 表示。你打算每天 最多 吃一个苹果来保证营养均衡。注意,你可以在这 n 天之后继续吃苹果。给你两个长度为 n 的整数数组 days 和 apples ,返回你可以吃掉的苹果原创 2021-12-24 13:05:16 · 261 阅读 · 0 评论 -
1044. 最长重复子串
项目场景:提示:这里简述项目相关背景:例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大)问题描述:提示:这里描述项目中遇到的问题:例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据APP 中接收数据代码:@Override public void run() { bytes = mmInStream.read(buffer); mHandler.obta原创 2021-12-23 17:00:08 · 910 阅读 · 0 评论 -
1154. 一年中的第几天
题目要求:给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。请你计算并返回该日期是当年的第几天。通常情况下,我们认为 1 月 1 日是每年的第 1 天,1 月 2 日是每年的第 2 天,依此类推。每个月的天数与现行公元纪年法(格里高利历)一致。示例 1:输入:date = “2019-01-09”输出:9示例 2:输入:date = “2019-02-10”输出:41示例 3:输入:date = “2003-03-01”输出:60示例 4:输原创 2021-12-21 14:12:26 · 626 阅读 · 0 评论