
Leetcode题解
文章平均质量分 59
以leetcode HOT 100 题为主
Eliauk &
我亦无他,惟手熟尔!
展开
-
天梯赛 L2-004 这是二叉搜索数吗?
帮助后期的复习与巩固原创 2023-01-16 20:44:48 · 165 阅读 · 0 评论 -
天梯赛 L2-005集合相似度(C++)
帮助大家和自己,以后总结经验,好复习使用原创 2023-01-15 20:11:00 · 271 阅读 · 0 评论 -
洛谷——P1017 [NOIP2000 提高组] 进制转换(C++)
洛谷——P1017 [NOIP2000 提高组] 进制转换(C++)前言前几天才参加了第十三届蓝桥杯比赛,发现居然有两道于进制相关的题,而且那道编程题——X进制减法,别说做了,题都看不懂,真的是枯了,做的我好绝望,以前关于进制转换的题感觉都很简单就直接跳过,以后再也不敢了,一定认认真真对待每一道题。路漫漫其修远兮,刷题还得要用心!一、题目好了,我们言归正传,来看看这道关于进制转换的题(普及/提高-)吧,我个人认为还是很有意思的,甚至还考了一点数学知识。二、解题思路这道题与我们平时做的进制原创 2022-04-17 11:00:39 · 1560 阅读 · 0 评论 -
第316场周赛 6224. 最大公因数等于 K 的子数组数目 (C++)
帮助广大网友和自己更好的复习原创 2022-10-23 20:36:58 · 507 阅读 · 0 评论 -
207.Leetcode 课程表(拓扑排序 c++ 广度优先搜索)
经典的拓扑排序题目,更好的掌握广度优先算法。原创 2022-11-06 20:21:42 · 218 阅读 · 0 评论 -
Leetcode 热题100 42.接雨水(C++ 多种解法,错过可惜)
1、题目描述这是博主今天的Leetcode 每日一题——接雨水(困难),这道题做了一天也没有做出什么花样来,最后看了题解后,发现居然有那么多种解法,但是自己一个也没有想到,真的是被自己菜哭的一天 ,博主就根据自己的理解,写了这篇题解,希望对其他的小伙伴有所帮助。(插一句题外话,之所以写这篇题解,是因为它的解法很多,个人感觉很有价值,也有助于博主日后的在巩固,提供方便)话不多说,我们来看看,几种解法。(博主个人理解哦)2、题解集2.1暴力解法首先,暴力解法是一定是超时(自己已经试过了),如原创 2022-05-08 12:42:00 · 1831 阅读 · 0 评论 -
Leetcode 热题100 84.柱状图中最大矩形(C++)
1、题目这是一道与栈、数组相关联的一道题,是应用栈很经典的一道题目,它的解题思路与我之前发布的——Leetcode 题解的 接雨水(大厂的常考题),有异曲同工之妙 !接下来让我们来详细进入这道题的解析!2、解题集2.1、暴力解法首先,对于暴力解法,最终的结果一定是超时的,时间复杂度是O(n*n),但是很多时候,暴力解法都是我们做题的第一步,很多时候正解也是从暴力解法一步一步优化而来的。好啦,我们回归题目我们根据题意,我们对所求矩形的”高“经行枚举:即从所给的数组元素中的某个元素.原创 2022-05-12 21:59:57 · 551 阅读 · 1 评论 -
Leetcod 热题100 200.岛屿数量(C++)
问题展示:问题描述这是一道与求连通块的题目很相似,文中的题目的问题也给的很明确,就是求由“1”为陆地,“0”为水,所构成的二维平面中,能形成多少给岛屿。我们可以通过搜索的方法,通过遍历题目所给的二维数组,找到有“1”的位置,然后从这个位置开始,对该位置上下左右4个方向进行,遍历,将为“1”的地方都改为“0”,这样的话,我们每搜索一次就会把一个岛屿上所有的“1”都变为“0”,那么最终搜索了几次,也就有几个岛屿!问题也就解决了。接下来我们看如何一步一步形成我们的代码。过程分析:①:方向的定义:我们用原创 2022-05-05 09:34:14 · 359 阅读 · 0 评论 -
leetcode 热题 100 136.只出现一次的数字(C++)
一、题目这虽然是一道难度简单的题,但是它的解法,博主个人觉得很巧妙,是博主以前没有见过的,于是便写下这篇题解来记录一下。方法一:hashmap这种方法其实是很好理解的,首先遍历数组,用一个map的集合储存每个出现的数字对应的次数,然后再遍历一遍数组,找出map集合中对应的只出现一次的数字,当然这也是博主第一时间想到的方法,很简单,也很好理解,附上代码:class Solution {public: int singleNumber(vector<int>& n原创 2022-05-01 18:19:48 · 846 阅读 · 0 评论 -
Leetcode 热题HOT100 198.打家劫舍(C++ 动态规划)
Leetcode 热题HOT100 198.打家劫舍题目展示一、题目解析首先拿到这道题时,博主读错题了(审题很重要!!!),只是以为每次小偷偷家,不能偷连续的两间房间,只能是偷一间房间然后隔一间房间,再偷另一间,就一次按照这样的规律偷家,然后我就用一个数组保存这样偷家的情况,即每一个数组元素对应一个总的偷到的钱数,然后比较出最大值,当然对于按照我的规律的情况是能通过的,但有的例子是通不过的,我给大家看看我这错误代码,大家要引以为戒!class Solution {public: in原创 2022-04-27 20:01:23 · 1354 阅读 · 0 评论 -
Leetcode 热题HOT 100 46.全排列
一、 题目展示这是一道全排列的题,而全排列这个知识点是很重要的,小伙伴们一定要掌握哦!接下来我会用两种方法对这个问题经行解答。二、解决方法方法一:C++(自带的全排列函数next_permumtation())我们都知道C++的函数库是那么的强大,在这里面自带的全排列函数next_permumtation()就可以很好的解决我们的这个问题,在这里博主只是提供解法,至于这个函数的使用方法很简单,网上也有很多这方面的知识,不懂的小伙伴可以自己去了解了解哦!注意:对于这道题而言,我们在使用原创 2022-04-24 13:10:14 · 1715 阅读 · 0 评论 -
Leetcode 热题HOT 100 62.不同路径
Leetcode 热题HOT 100 62.不同路径目录一、题目二、解析过程1.题目解析2.代码实现总结目录一、题目二、解析过程1.题目解析首先拿到这道题时,我想到的第一反应是深度搜索,然后做了很久,结果却是内容运行超时,然后又反过来思考题目,我们会发现机器人的行走只能是“向下”或者“向右”,在一个二维的平面上,对于方格的一个位置(i,j),可以通过“向右”到达——>即前一步所处的位置为(i,j-1),也可以“向下”到达——>即前一步所处的位置为(i-1,j)。其实分析到这里我原创 2022-04-22 09:00:42 · 163 阅读 · 0 评论 -
Leetcode 热题HOT 100 55.跳跃游戏(C++ 贪心)
题目刚开始做这道题是真的难到博主了,写了很多,弄得忒复杂,我边写还边嘲讽这题是个什么玩意儿,但当我看来官方题解后,恍然大悟,我是个什么玩意儿,真的很气愤,为什么自己想不到这样的题解,呜呜呜,枯了枯了。好了,让我们进入正题吧:题目解析首先这是一道贪心的题,我们要判断从初始数组的位置能否到达最后一个位置的下标处,我们可以假设y是数组中任意一个我们需要到达的下标处,此时我们可以从初始下标0处开始遍历数组,去寻找是否存在一个数的下标为x我们可以到达,如果存在这样的数x那么x+nums[x]就是该原创 2022-04-20 21:24:03 · 3303 阅读 · 2 评论 -
Leetcode 热题HOT 100 22.括号生成(C++ 深搜)
Leetcode 热题HOT 100 22.括号生成题目一、题目解析根据题意可知,对于给定的数字,我们要输出合法的括号对的组合,刚开始想的是用栈来解决,发现根本行不通,然后看了一些大佬的题解,发现我们可以通过深度搜索来解决,因为从空串,一直不断的搜索下去,最终会形成一棵满二叉树,如图所示:但是,这样出的有的结果是不符合要求的,是不合法的,所以我们还有在这个深搜函数中进行过滤。二、过程解析:对于这道题的题解我分解成如下四个部分来解决:①:定义动态字符数组S来储存返回的括号对组合;②:df原创 2022-04-19 11:00:04 · 280 阅读 · 0 评论 -
Leetcode 热题 HOT 100 17.电话号码的字母组合(C++ 深搜+回溯)
Leetcode 热题 HOT 100 17.电话号码的字母组合(C++ 深搜+回溯)题目路漫漫其修远兮,刷题还得要用心!一、题目解析这是一道通过字母组合的问题,通过电话键上数字对应的字母经行组合输出,我们求解的方法是通过深度搜索+回溯的方法完成题目的求解!(提一句:不会搜索和回溯的小伙伴,要下来多多去学习哦,它们本质其实枚举,但在时间复杂度上有大的优化哦)二、解题步骤①:我们定义一个字符数组s2来储存,电话键上数字所对应的字母组;②:我们定义动态字符数组s1来储存我们返回的最终值,定义原创 2022-04-18 15:15:21 · 2022 阅读 · 0 评论 -
Leetcode 热题HOT 100 6.Z字形变换(C++)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档Leetcode HOT 100 6.Z字形变换题目提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn.原创 2022-04-16 10:39:43 · 979 阅读 · 0 评论 -
Leetcode 热题HOT 100 5.最长回文子串
Leetcode 热题HOT 100 5.最长回文子串题目这里只提供两种解法,负责任的说其实是一种,自己太菜了,路漫漫其修远兮,刷题还得要用心(呜呜呜~)一、暴力枚举题目要求的是求最长回文子串,暴力枚举的方法很直接,我们需要注意三个点:①:最长;②:回文串;③:子串;首先,对于①用ans=1记录子串的长度,t=0记录最长子串的起始位置;对于②,我们建立一个cheak()函数,来判断每一个子串是为回文串;对于③,我们用双重循环,来枚举出每一子串;完成上述准备后,用substr()函数截原创 2022-04-15 10:45:05 · 710 阅读 · 0 评论