- 博客(40)
- 收藏
- 关注
原创 力扣热题51
双层循环进行遍历,对每个1进行计数作为岛屿,然后进入递归将这个1四周的1的四周都变为0即淹没,最后得到答案。200. 岛屿数量 - 力扣(LeetCode)
2026-01-05 16:05:12
221
原创 力扣刷题-热题100题-第50题(c++、python)
以一个全局变量记录最大路径和,在递归中不断记录当前节点下路径和最大的值(这个用来递归返回),同时在递归里面不断看当前节点左边加右边是否是最大值并更新记录。124. 二叉树中的最大路径和 - 力扣(LeetCode)
2026-01-04 16:10:07
172
原创 力扣刷题-热题100题-第49题(c++、python)
对于q,在已知p的所有父节点情况下,看集合中是否有自己,然后自己也往上走到父节点,重合就是共同的那个父节点。然后对于p,每次访问节点就把节点放入集合,然后当前节点向上走得到父节点。拿到根节点,在根节点处判断为空或者根节点就是p或q就返回根节点。236. 二叉树的最近公共祖先 - 力扣(LeetCode)然后进入左节点看是否有p或q,进入右节点看是否有p或q。利用递归得到每个节点对应的上一个节点放到字典里面。如果左节点和右节点有就是这个节点为父节点返回。
2025-09-23 16:40:39
360
原创 力扣刷题-热题100题-第33题(c++、python)
148. 排序链表 - 力扣(LeetCode)148. 排序链表 - 给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表。
2025-04-07 19:00:00
1844
原创 力扣刷题-热题100题-第17题(c++、python)
然后就对数组元素在1到n的数做处理,以元素值作为下标得到元素取负数,这里需要注意可能有多个相同的1到n的元素值,所以这里的元素值要取绝对值来判断是否在1到n里面 ,而这个绝对值对应下标的元素也要保证一定变为负数,所以是先让这个元素取绝对值后再取负;一种是有少的,那么我们就要找出来,根据上面的假设,数组中的元素值是已有的正整数,数组的下标是固定的,少的那个一定是1到n,对应于数组下标要怎么表示呢?首先对数组进行处理,负数与0是不需要的,所以对于负数与0做n+1的标记,当然n+2等等也行;
2025-03-16 16:00:00
423
原创 力扣刷题-热题100题-第16题(c++、python)
我一开始想可不可以一次遍历得到答案,但不太现实,不过仔细思考可以知道除自身的乘积其实也可以表示为左边乘积和右边乘积的乘积,所以一次遍历得到左边乘积,下一次遍历得到右边的乘积。而为了也减少空间,可以第一次遍历(从前往后)得到左边乘积后在第二次遍历(从后往前)时以一个元素存储右边乘积来对左边乘积进行不断的相乘得到答案。分析题目,除自身之外,还不能整除自己(也有便利,以防自身为0)238. 除自身以外数组的乘积 - 力扣(LeetCode)
2025-03-15 16:00:00
184
原创 力扣刷题-热题100题-第15题(c++、python)
189. 轮转数组 - 力扣(LeetCode)根据题目要在原有数组上进行操作,对于python的数组可以有数组头的出队和数组尾的入队,对于c++没有,所以根据编程语言选择最合适的方法。
2025-03-13 16:30:00
414
原创 力扣刷题-热题100题-第14题(c++、python)
56. 合并区间 - 力扣(LeetCode)先排序后按顺序根据区间右节点与下一个区间的左节点尽心比较看是否囊括进行合并。
2025-03-12 12:00:00
341
原创 力扣刷题-热题100题-第12题(c++、python)
在python中是以时间空间都比较平衡的方式,以一个Counter的数据类型tc对t中字符进行统计,然后对s进行遍历,在遍历中对tc进行操作也进行重合字符的计数,当s中字符在tc中时,相应字符数量-1,但重合计数+1,且把这个位置放到数组index中,直到重合数量有t那么大,取出index的第一个元素作为左指针位置(这样左指针不用累加的操作,直接以位置数组的第一个元素赋值),来看左右指针长度,若更小就替换,且右指针右移。直到s中的左指针的字符比t中的还多时,左指针右移;c++是力扣官网评论区大佬的。
2025-03-10 12:30:00
1854
原创 力扣刷题-热题100题-第11题(c++、python)
239. 滑动窗口最大值 - 力扣(LeetCode)c语言需要对堆和队列的定义以及操作进行定义,非手熟者慎重,我不太行,还是熟悉一下c++和python的内置函数吧。。。是 C++ 标准库中的一种容器适配器,用于实现优先队列(Priority Queue)。优先队列是一种特殊的队列,它允许元素按照优先级进行排序,优先级最高的元素总是位于队首,优先被处理。emplace是 C++的一种用于在容器中直接构造元素的方法是 Python 标准库heapq。
2025-03-09 14:46:01
834
原创 力扣刷题-热题100题-第10题(c++、python)
560. 和为 K 的子数组 - 力扣(LeetCode)审题可知,和为k的子数组是数组中元素的连续非空序列。常规来想应该是固定右边,穷举左边看是否存在,所以双层循环进行求解,但实际过程中可以通过测试用例但实际通过却会超时,故有下面解法。
2025-03-04 13:36:35
424
原创 力扣刷题-热题100题-第8题(c、python)
循环遍历数组,以左指针和右指针作为不重复子串的左右边界,右指针以下一个元素是否在左指针与右指针包括的子串里来判断左指针是否该往后走来保证左右指针概括住的子串一定是没有重复元素的,当时记录这个时候的子串长度,并不断更新最大不循环子串的长度(上面引用的博客里面有个很好的视频可以看)小循环从当前位置往后不断记录唯一值的元素作为无重复字符的子串(c语言通过strchr函数看子串中是否包含当前元素来记录,python通过set集合看是否包含当前元素来记录)对这个子串的长度进行记录,并不断更新最大的子串长度。
2025-02-28 14:30:00
1054
原创 力扣刷题-热题100题-第6题(python)
15. 三数之和 - 力扣(LeetCode)这道题对于c语言而言,返回的三元组就很难表示,故此处不进行练习了对问题进行分析,先将数组中的数进行三元组的抽取得到和为0,然后保证组成的三元组与三元组之间不能重复。
2025-02-26 15:12:14
431
原创 力扣刷题-热题100题-第5题(C、python)
右边的指针所指的数时,当前的面积不一定是最大的,此时把右指针往左移来看还有没有更大的。右边的指针所指的数时,当前的面积就是最大的,此时把左指针往右移;11. 盛最多水的容器 - 力扣(LeetCode)定义两个指针,分别指向数组最左边与最右边。这两条线围起来的面积定义如下图所示。以左右指针不重合为循环条件。当左边的指针所指的数。当左边的指针所指的数。
2025-02-25 09:31:12
297
原创 力扣刷题-热题100题-第3题(C、python)
128. 最长连续序列 - 力扣(LeetCode)在编程中,(Set)是一个不允许重复元素的容器。集合中可以存储任何类型的元素,通常用于测试元素是否存在、去重等场景。在许多编程语言中都有集合的实现,如 Python、Java、C++ 等,同时对集合有直接的内嵌函数进行操作,但是c没有,所以这道题对于c来说主要用对整个数组进行有序的排序后再进行处理,而对于Python、Java、C++这些编程语言可以直接使用这种数据结构用哈希法来解决这道题目。
2025-02-21 10:52:57
847
原创 优快云也可以有表情啦,收藏转发住
优快云 表情支持,最新emoji表情✨✨【收藏起来】_csdn网站表情-优快云博客https://blog.youkuaiyun.com/ZiChen_Jiang/article/details/120222616?ops_request_misc=%257B%2522request%255Fid%2522%253A%252258511cdf6a7304f2e8b145dbb78941da%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%
2025-02-20 16:54:20
314
原创 力扣刷题-热题100题-第2题(C#、python)
49. 字母异位词分组 - 力扣(LeetCode)c整不动了😭😭😭n字符串数组长度,m是最长字符串的长度。
2025-02-20 16:43:43
1063
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1