
刷题
文章平均质量分 76
在这个内卷的社会,要想保持竞争力,就要刷题,不断刷题,持续刷题,坚持刷题
C137的本贾尼
सत्यमेवजयतेनानृतम्(真理独胜,伪道无存)
展开
-
(每日一道算法题)两两交换链表中的节点
递归解法通过分解问题,逐层处理并合并结果,代码简洁但需注意栈空间。迭代解法省去了递归开销,适合处理长链表。理解这两种方法有助于深入掌握链表操作的核心思想。原创 2025-05-21 17:36:57 · 219 阅读 · 0 评论 -
(每日一道算法题)字符串解码
利用栈处理嵌套解码问题,能够有效管理不同层次的字符串和重复次数。此方法直观且高效,适用于大部分嵌套结构解析场景。原创 2025-03-31 22:04:52 · 372 阅读 · 0 评论 -
(每日一道算法题)最长回文子串
中心扩展法通过利用回文串的对称性,高效地解决了最长回文子串问题。其核心思想是从每个可能的中心向两侧扩展,寻找最大回文。相比于动态规划等其他方法,中心扩展法在空间复杂度上更具优势,且代码简洁易懂。原创 2025-03-27 23:20:50 · 317 阅读 · 0 评论 -
(每日一道算法题) K 个一组翻转链表
本解法通过头插法实现每组的翻转,利用虚拟头节点简化连接逻辑,通过前驱指针维护各组之间的连接。思路清晰,代码简洁高效。适用于对链表操作较为熟悉的开发者,重点在于理解头插法的翻转逻辑和指针的更新策略。原创 2025-03-26 21:09:43 · 430 阅读 · 0 评论 -
(每日一道算法题)合并 K 个升序链表
给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。链表数组如下:1->4->5,1->3->4,2->6将它们合并到一个有序链表中得到。原创 2025-03-25 21:02:37 · 284 阅读 · 0 评论 -
(每日一道算法题)两数相加
该解法通过逐位相加并维护进位,高效处理了逆序链表的相加问题。使用哑节点简化了链表操作,确保代码简洁且鲁棒性强。通过合理处理边界条件(如链表长度不同、最终进位),保证了算法的正确性。原创 2025-03-25 11:20:22 · 231 阅读 · 0 评论 -
(每日一道算法题)翻转对
降序排序的必要性:保证右子数组元素从前往后递增,使得统计时能利用有序性快速定位。独立统计阶段:必须在合并前单独统计,避免遗漏可能的翻转对。防止整数溢出:比较时使用long类型(如。原创 2025-03-23 21:36:24 · 913 阅读 · 0 评论 -
(每日一道算法题)交易逆序对的总数
在股票交易中,如果前一天的股价高于后一天的股价,则可以认为存在一个「交易逆序对」。请设计一个程序,输入一段时间内的股票交易记录record,返回其中存在的「交易逆序对」总数。8交易中的逆序对为 (9, 7), (9, 5), (9, 4), (9, 6), (7, 5), (7, 4), (7, 6), (5, 4)。原创 2025-03-21 20:24:55 · 404 阅读 · 0 评论 -
(每日一道算法题)排序数组
稳定时间复杂度:无论输入数据如何分布,始终保证 O(n log n)天然稳定性:保持相等元素的原始顺序(本题虽不要求,但属于重要特性)分治结构:适合处理大规模数据,且易于并行优化与快速排序相比,避免了最坏情况 O(n²) 的风险;与堆排序相比,具有更好的缓存局部性。原创 2025-03-21 10:56:55 · 340 阅读 · 0 评论 -
(每日一道算法题)数组中的第 k 个最大的元素
给定整数数组nums和整数k,请返回数组中第k个最大的元素。请注意,你需要找的是数组排序后的第k个最大的元素,而不是第k个不同的元素。你必须设计并实现时间复杂度为O(n)的算法解决此问题。原创 2025-03-16 11:26:07 · 362 阅读 · 0 评论 -
(每日一道算法题)数青蛙
给你一个字符串,它表示不同青蛙发出的蛙鸣声(字符串"croak")的组合。由于同一时间可以有多只青蛙呱呱作响,所以中会混合多个“croak”。请你返回模拟字符串中所有蛙鸣所需不同青蛙的最少数目。要想发出蛙鸣 "croak",青蛙必须输出这 5 个字母。如果没有输出全部五个字母,那么它就不会发出声音。如果字符串不是由若干有效的 "croak" 字符混合而成,请返回-1。1一只青蛙 “呱呱” 两次2最少需要两只青蛙,“呱呱” 声用黑体标注第一只青蛙 "croak"第二只青蛙 "croak-1。原创 2025-03-13 21:49:26 · 923 阅读 · 0 评论 -
(每日一道算法题)外观数列解析
外观数列(Count and Say)是一个经典的递归定义序列,其特性是每个后续项都是对前一项的行程长度编码(Run-Length Encoding, RLE)。外观数列问题通过迭代法和双指针技巧高效实现,重点在于理解 RLE 的转换规则和字符串操作优化。和直接追加整数的设计,体现了 Java 高效处理字符串的最佳实践。虽然外观数列是递归定义的,但直接使用递归会导致重复计算。,要求返回该数列的第。原创 2025-03-10 16:40:14 · 427 阅读 · 0 评论