
LeetCode题解
文章平均质量分 88
LeetCode题库从第一题开始,以最优时间复杂度or空间复杂度进行LeetCode题库刷题
楼台的春风
等风来不如追风去!
展开
-
LeetCode刷题第8题【字符串转换整数 (atoi)】---解题思路及源码注释
本文章中的该解法通过逐步读取字符串中的字符,考虑了符号、空格、数字的转换,并进行了溢出判断。时间复杂度为 O(n),空间复杂度为 O(1),是该问题的最优解法。原创 2025-02-16 08:00:00 · 641 阅读 · 0 评论 -
LeetCode刷题第7题【整数反转】---解题思路及源码注释
本文章中的解法通过模拟反转过程,利用取余和除法操作逐步反转数字,同时进行溢出检查,确保结果不会超过 32 位有符号整数的范围。时间复杂度为 O(log(x)),空间复杂度为 O(1),是该问题的最优解法。原创 2025-02-14 22:26:19 · 802 阅读 · 0 评论 -
LeetCode刷题第6题【Z 字形变换】---解题思路及源码注释
文章中该解法通过模拟 Z 字形排列过程并使用一个 vector<string> 存储每一行的字符,时间复杂度为 O(n),空间复杂度为 O(n)。这种方法简单且高效,适合处理大部分情况下的 Z 字形转换。原创 2025-02-14 22:10:55 · 890 阅读 · 0 评论 -
LeetCode刷题第5题【最长回文子串】---解题思路及源码注释
文章中该解法使用了 中心扩展法 来找到字符串中的最长回文子串,时间复杂度为 O(n^2),空间复杂度为 O(1)。这个方法实现简单且高效,适用于字符串长度较长时的回文子串查找原创 2025-02-13 15:44:56 · 687 阅读 · 0 评论 -
LeetCode刷题第4题【寻找两个正序数组的中位数】---解题思路及源码注释
该文章中的算法利用了二分查找的技巧,通过在较短的数组中查找合适的划分点,成功将时间复杂度优化到 O(log(min(m, n))),满足题目要求。通过合理的划分和条件判断,我们能够高效地计算出两个有序数组的中位数。原创 2025-02-12 14:00:00 · 594 阅读 · 0 评论 -
LeetCode刷题第1题【两数之和】---解题思路及源码注释
文章提供了一种方法,通过哈希表优化了查找操作,避免了暴力法中 O(n²) 的时间复杂度,成功将时间复杂度降低到了 O(n),并通过哈希表实现了快速查找,满足题目要求原创 2025-02-11 14:58:35 · 990 阅读 · 0 评论 -
LeetCode刷题第2题【两数相加】---解题思路及源码注释
文章通过模拟手动加法的过程,我们简洁地实现了两个链表的相加,代码结构清晰,容易理解。每次加法时考虑当前节点的值、进位和链表的移动,确保了处理所有边界情况,如不同长度的链表和进位。原创 2025-02-11 16:33:16 · 718 阅读 · 0 评论 -
LeetCode刷题第3题【无重复字符的最长子串】---解题思路及源码注释
文章中展现了通过优化,避免使用哈希集合来存储窗口内的字符,改为使用一个固定大小的字符位置映射数组。这样可以减少内存开销,并优化了对字符位置的访问,使得代码更加高效和简洁。对于字符集较大的情况,只需增加 index_map 数组的大小即可适用。原创 2025-02-12 08:41:03 · 525 阅读 · 0 评论