沐林耀锦城
沐林耀锦城
全部文章
分类
归档
标签
去牛客网
登录
/
注册
沐林耀锦城的博客
TA的专栏
0篇文章
0人订阅
好易学数据结构
0篇文章
0人学习
全部文章
(共22篇)
题解 | #缺失的第一个正整数#
1.思路 未排序的整数数组nums,需要找到缺失的第一个正整数,可以将数组中的内容添加到set中(主要考虑到set查询的速度优势),同时记录数组中的最大正整数n,之后从1到n遍历整数,对比遍历到的整数是否已经在set中。 具体思路是: 定义一个哈希表(set); 将数组中的值存储到set中...
2025-07-21
2
17
题解 | #合并k个已排序的链表#
秒懂【合并K个链表】!超清晰图解一步步拆解。 1.思路 根据题目要求,时间复杂度 O(nlogk)。如果K个升序的链表如果执行两两合并,时间复杂度(n*k^2)不满足要求。这时我们可以借助于堆(复杂度为nlogk)来完成K个链表的排序。 假如链表分别为:1→2、 1→4→5与6,合并之后为:1→...
2025-07-21
2
17
题解 | #合并两个排序的链表#
秒懂【链表合并】!超清晰图解一步步拆解。 1.思路 假如要合并的两个链表分别为: 1→3→5与 2→4→6,对他们两个链表合并,合并之后的链表为: 1→2→3→4→5→6。结构如下图所示。 第一步:定义临时虚拟头节点与指针变量。指针变量有3个,cur用于操作的链表,h1用于链表1节点值的对比,h...
2025-07-18
2
23
题解 | #有效括号序列#
用栈2步轻松搞定【有效括号判断】。 1.思路 题目要求,字符串:仅包含:'(',')','{','}','['和']'。因此可以通过栈完成括号的匹配。 如果文字描述的不太清楚,你可以参考视频的详细讲解:B站@好易学数据结构 2.代码 2.1 Python代码 # # 代码中的类名、方法名、参数名...
2025-07-18
2
21
题解 | #最长回文子串#
秒懂【最长回文子串】!动态规划一步步拆解。 1.思路 对于回文,定义两个变量i和j,都指向字符串对应的字符。i和j变量回文判断指向如下图所示。刚开始的时候i、变量都指向同一个字符,之后i尝试向左移动,j变量尝试向右移动。 因此变量 i 取值范围(从最后一个元素到第0个元素,从后往前遍历):arr[...
2025-07-18
2
28
题解 | #链表相加(二)#
秒懂【链表相加】!超清晰图解一步步拆解。链表相加有的时候也叫两数相加。 1.思路 对于给定的两个链表相加,首先是最后两个节点值的相加,接下来是倒数第二节点值的相加,从后向前执行节点值的相加。即:节点7与节点3相加,再执行节点3与节点6相加(还需加上进位数),最后是节点9与进位数的相加。 也就是说...
2025-07-18
2
30
题解 | #判断是不是完全二叉树#
秒懂【完全二叉树】判断!超清晰图解一步步拆解。 1.思路 先来看完全二叉树的定义: 完全二叉树的定义:若二叉树的深度为 h,除第 h 层外,其它各层的结点数都达到最大个数,第 h 层所有的叶子结点都连续集中在最左边,这就是完全二叉树。(第 h 层可能包含 [1~2h] 个节点) 通过层序遍历二...
2025-07-16
2
23
题解 | #二分查找-I#
秒懂【反转链表】!超清晰图解一步步拆解。 1.思路 先来看一下什么是二分查找? 二分查找是一种高效的搜索算法,适用于有序数组。其核心思想是通过不断缩小搜索范围,将时间复杂度降至 O(log n)。 核心步骤: 初始化指针:设置左指针 left = 0,右指针 right = 数组长度 - 1。...
2025-07-16
2
54
题解 | #判断链表中是否有环#
秒懂【环形链表判断】!超清晰图解一步步拆解。 1.思路 如下图所示,链表1不存在环(最后一个节点指向Null),而链表2存在环(最后一个节点的指针域指向了第二个节点)。 判断链表是否存在环有个小技巧:快慢指针法。定义2个指针变量(即快慢指针),初始化时快慢指针都指向头节点,每次快指针每次移动 2...
2025-07-16
2
29
题解 | 反转链表
假如说这是我们的链表,结构如下图所示:第一步:定义3个指针变量,pre(序节点)、cur(当前操作的节点)和nxt(当前操作的下一个节点),结构如下图所示:第二步:通过更改刚刚定义的3个指针变量反转链表节点。更改pre的指针域(next)指向:更改cur的指针域(next)指向:首先更改cur的指针...
2025-07-15
2
25
首页
上一页
1
2
3
下一页
末页