- 博客(318)
- 收藏
- 关注
原创 LeetCode题练习与总结:消除游戏--390
本文详细介绍了如何高效解决列表数字交替删除问题,通过数学建模和递推关系,避免了直接模拟的高时间复杂度,实现了O(log n)的时间复杂度和O(1)的空间复杂度。
2024-11-11 15:00:00 246
原创 LeetCode题练习与总结:找不同--389
本文详细介绍了如何找出字符串 t 中被添加的字母。通过累加字符串 s 和 t 的字符 ASCII 值,巧妙地找出差异字符,时间复杂度为 O(n),空间复杂度为 O(1),涉及多个 Java 知识点。
2024-11-11 09:00:00 448
原创 LeetCode题练习与总结:文件的最长绝对路径--388
本文详细介绍了如何通过使用栈来计算文件系统中最长绝对路径的长度。代码实现涉及字符串操作、栈的使用和路径长度计算,总结了相关知识点和时间复杂度分析。
2024-11-10 15:00:00 544
原创 LeetCode题练习与总结:字符串中的第一个唯一字符--387
本文详细介绍了如何找到字符串中第一个不重复字符的索引。通过创建一个固定大小的数组记录字符出现次数,采用两次遍历字符串的方法,实现了时间复杂度为O(n)、空间复杂度为O(1)的解决方案。
2024-11-10 09:00:00 1410
原创 LeetCode题练习与总结:字典序排数--386
本文详细介绍了按字典序返回[1, n]内所有整数的算法实现,包括解题思路、具体代码、时间复杂度分析及知识点总结,旨在帮助读者理解和掌握这一高效算法。
2024-11-09 15:00:00 736
原创 LeetCode题练习与总结:迷你语法分析器--385
本文详细介绍了如何解析整数嵌套列表字符串并返回 NestedInteger 对象的解题思路和具体实现。涉及知识点包括字符串处理、栈的使用、递归逻辑等,时间复杂度为 O(n),空间复杂度也为 O(n)。
2024-11-09 09:00:00 465
原创 LeetCode题练习与总结:打乱数组--384
本文详细介绍了如何使用Fisher-Yates洗牌算法实现一个随机打乱数组的类,包括时间复杂度、空间复杂度分析及关键知识点总结,为解决类似问题提供了清晰的思路和代码实现。
2024-11-08 15:00:00 976
原创 LeetCode题练习与总结:赎金信--383
本文详细介绍了如何判断字符串ransomNote能否由magazine中的字符构成的问题,包括解题思路、具体代码实现、时间复杂度和空间复杂度分析,以及涉及的知识点总结。
2024-11-08 09:00:00 762
原创 LeetCode题练习与总结:O(1) 时间插入、删除和获取随机元素 - 允许重复--381
本文详细介绍了如何实现一个支持插入、删除和获取随机元素的 RandomizedCollection 类,分析了时间复杂度和空间复杂度,并总结了涉及的 Java 知识点。
2024-11-07 15:00:00 992
原创 LeetCode题练习与总结:O(1) 时间插入、删除和获取随机元素--380
本文详细介绍了如何实现一个支持 O(1) 时间复杂度的插入、删除和随机获取元素的 RandomizedSet 类,涵盖了数据结构选择、代码实现及时间空间复杂度分析,为高效集合操作提供了有效解决方案。
2024-11-07 09:00:00 989
原创 LeetCode题练习与总结:有序矩阵中第 K 小的元素--378
本文详细介绍了在有序矩阵中查找第 k 小元素的解题思路和具体实现。通过二分查找和矩阵有序性质,实现了时间复杂度为 O(n log(max - min)) 的算法,并总结了相关知识点。
2024-11-06 15:00:00 653
原创 LeetCode题练习与总结:组合总和 Ⅳ --377
本文详细介绍了如何使用动态规划解决组合总和问题,包括解题思路、代码实现、时间复杂度和空间复杂度分析,以及涉及的知识点总结,帮助读者深入理解并掌握这一算法。
2024-11-06 09:00:00 1006
原创 LeetCode题练习与总结:摆动序列--376
本文详细解析了如何求解最长摆动子序列问题,介绍了贪心算法的解题思路,并给出了Java实现代码,分析了时间复杂度和空间复杂度,总结了涉及的编程知识点。
2024-11-05 15:00:00 983
原创 LeetCode题练习与总结:猜数字大小 Ⅱ --375
本文详细解析了一个猜数游戏的动态规划解题方法,通过构建二维数组 dp 存储子问题解,采用三重循环填充数组,最终求得确保获胜的最小现金数,总结了涉及的算法知识点和时间复杂度分析。
2024-11-05 09:00:00 983
原创 LeetCode题练习与总结:猜数字大小--374
本文详细介绍了猜数字游戏的解题思路和具体实现,运用二分查找算法高效解决问题,并分析了代码的时间复杂度和空间复杂度,总结了涉及的关键知识点。
2024-11-04 15:00:00 749
原创 LeetCode题练习与总结:查找和最小的 K 对数字--373
本文详细介绍了如何使用优先队列解决两个非递减顺序数组的最小数对问题,包括解题思路、Java代码实现、时间复杂度分析及关键知识点总结,为高效求解此类问题提供了清晰指导。
2024-11-04 09:00:00 678
原创 LeetCode题练习与总结:超级次方--372
本文详细介绍了如何计算 a^b 对 1337 取模的问题,包括解题思路、具体代码实现、时间复杂度和空间复杂度分析,以及涉及的知识点,为解决类似问题提供了有效的方法和启发。
2024-11-03 15:00:00 619
原创 LeetCode题练习与总结:两整数之和--371
本文介绍了如何不使用加号和减号实现两整数之和的计算方法,通过位运算中的异或和与操作,详细阐述了算法思路、代码实现、时间复杂度分析及关键知识点。
2024-11-03 09:00:00 824
原创 LeetCode题练习与总结:最大整除子集--368
本文详细介绍了求解最大整除子集问题的方法,包括解题思路、具体代码实现、时间复杂度与空间复杂度分析,以及涉及的关键知识点,为解决类似问题提供了清晰的指导。
2024-11-02 15:00:00 810
原创 LeetCode题练习与总结:有效的完全平方数--367
本文介绍了如何不使用内置 sqrt 函数判断一个数是否为完全平方数。通过二分查找算法,我们实现了时间复杂度为 O(log(num)) 的解决方案,并详细分析了代码的时间与空间复杂度。
2024-11-02 09:00:00 514
原创 LeetCode题练习与总结:水壶问题--365
本文详细解析了如何使用贝祖定理解决两个水壶容量问题,通过辗转相除法求最大公约数,判断能否准确得到目标升数的水,涵盖解题思路、代码实现及复杂度分析。
2024-11-01 15:00:00 1778
原创 LeetCode题练习与总结:矩形区域不超过 K 的最大数值和--363
本文详细介绍了矩阵内最大数值和不超过k的矩形区域查找算法,通过前缀和与TreeSet优化,实现了O(m^2×n×logn)的时间复杂度,为解决此类问题提供了有效方法。
2024-11-01 09:00:00 1003
原创 LeetCode题练习与总结:统计各位数字都不同的数字个数--357
本文详细阐述了如何通过组合数学方法解决统计各位数字都不同的数字个数的问题,并提供了Java代码实现,分析了时间复杂度和空间复杂度,总结了涉及的编程知识点。
2024-10-31 15:00:00 519
原创 LeetCode题练习与总结:设计推特--355
本文详细介绍了简化版Twitter的设计与实现,包括推文发布、关注与取消关注功能,以及获取新闻推送的算法。分析了时间复杂度和空间复杂度,总结了涉及的Java编程知识点。
2024-10-31 09:00:00 2070
原创 LeetCode题练习与总结:俄罗斯套娃信封问题--354
本文详细介绍了如何解决“俄罗斯套娃”信封问题,通过排序和LIS算法实现,分析了时间复杂度和空间复杂度,并总结了涉及的Java编程知识点。
2024-10-30 15:00:00 942
原创 LeetCode题练习与总结:将数据流变为多个不相交区间--352
本文详细介绍了如何实现SummaryRanges类,以管理数据流中的区间,包括类的构造、添加数字、合并区间以及获取区间列表。分析了时间复杂度、空间复杂度,并总结了关键知识点。
2024-10-30 09:00:00 1712
原创 LeetCode题练习与总结:两个数组的交集 Ⅱ--350
本文详细介绍了如何使用HashMap和ArrayList解决两个整数数组的交集问题,包括代码实现、时间复杂度分析以及关键知识点总结,为求解此类问题提供了清晰的思路和步骤。
2024-10-29 15:00:00 1770
原创 LeetCode题练习与总结:两个数组的交集--349
本文详细介绍了如何使用HashSet求解两个数组的交集问题,包括解题思路、具体代码实现、时间复杂度和空间复杂度分析,以及涉及的关键知识点总结。
2024-10-29 09:00:00 653
原创 LeetCode题练习与总结:前 K 个高频元素--347
本文详细介绍了如何使用哈希表和最小堆求解“找出数组中出现频率前 k 高的元素”的问题,包括解题思路、代码实现、时间复杂度分析及知识点总结。
2024-10-28 15:00:00 924
原创 LeetCode题练习与总结:反转字符串中的元音字母--345
本文详细介绍了如何反转字符串中的元音字母,包括解题思路、具体代码实现、时间复杂度与空间复杂度分析,以及涉及的关键知识点,为解决此类问题提供了清晰的指导。
2024-10-28 09:00:00 537
原创 LeetCode题练习与总结:反转字符串--344
本文详细介绍了如何编写一个函数来反转字符数组,采用双指针方法原地修改数组,分析了算法的时间复杂度和空间复杂度,并总结了涉及的关键Java编程知识点。
2024-10-27 15:00:00 1102
原创 LeetCode题练习与总结:回文对--336
本文详细介绍了如何解决给定字符串数组中找出所有回文对的问题,包括解题思路、具体代码实现、时间复杂度分析以及涉及的关键知识点,为高效解决此类问题提供了指导。
2024-10-27 12:00:00 518
原创 LeetCode题练习与总结:整数拆分--343
本文详细介绍了如何使用动态规划解决整数拆分问题,包括解题思路、代码实现、时间复杂度分析及知识点总结,旨在帮助读者理解和掌握动态规划在优化问题中的应用。
2024-10-27 09:00:00 1586
原创 LeetCode题练习与总结:4的幂--342
本文详细介绍了如何判断一个整数是否为4的幂次方,包括解题思路、具体代码实现、时间复杂度与空间复杂度分析,以及涉及的知识点,为理解位操作和算法逻辑提供了清晰的指导。
2024-10-26 15:00:00 707
原创 LeetCode题练习与总结:扁平化嵌套列表迭代器--341
本文详细介绍了如何实现一个扁平化嵌套整数列表的迭代器,包括解题思路、具体代码实现、时间复杂度和空间复杂度分析,以及涉及的知识点总结,为解决此类问题提供了清晰的指导。
2024-10-26 09:00:00 1010
原创 LeetCode题练习与总结:比特位计数--338
本文详细介绍了如何使用动态规划方法计算一个整数范围内每个数的二进制表示中1的个数,并给出了具体的代码实现及其时间、空间复杂度分析,总结了涉及的关键知识点。
2024-10-25 15:00:00 1374
原创 LeetCode题练习与总结:打家劫舍 Ⅲ--337
本文详细介绍了如何解决二叉树偷盗问题,通过动态规划和递归方法,计算每个节点偷或不偷的最大金额,最终得到小偷能盗取的最高金额,涵盖了解题思路、代码实现及复杂度分析。
2024-10-25 09:00:00 680
原创 LeetCode题练习与总结:路径交叉--335
本文详细解析了一个判断路径是否相交的问题,通过分析路径移动规律,给出了Java实现代码,并总结了时间复杂度、空间复杂度及相关知识点,为解决类似问题提供了清晰的思路和参考。
2024-10-24 15:00:00 1147
原创 LeetCode题练习与总结:递增的三元子序列--334
本文详细介绍了如何使用贪心算法解决判断整数数组中是否存在长度为3的递增子序列问题,包括解题思路、代码实现、时间复杂度分析及知识点总结,为解决类似问题提供了有效方法。
2024-10-24 09:00:00 946
原创 LeetCode题练习与总结:重新安排行程--332
本文详细介绍了如何使用深度优先搜索和优先队列解决航线规划问题,包括代码实现、时间复杂度分析及关键知识点总结,旨在帮助读者理解和掌握该问题的求解方法。
2024-10-23 15:00:00 1053
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人