- 博客(3)
- 收藏
- 关注
原创 删除有序数组重复项算法分析报告
给定一个升序排列的整数数组nums,要求删除其中的重复元素,使得每个元素只出现一次,并返回去重后的数组长度。关键约束:必须在原数组nums上进行修改,不能申请额外的数组空间(空间复杂度 O(1)O(1)O(1))。返回去重后数组的新长度k。根据题目约定,只要前k个元素是正确的唯一元素,后面的元素是什么并不影响评测。该代码是一个非常经典的双指针应用范例。它巧妙地利用了数组的有序性,通过一次线性扫描就完成了去重操作,达到了理论上的时间最优解 O(n)O(n)O(n) 和空间最优解 O(1)O(1)O(1)。
2025-12-28 14:55:28
223
原创 最长回文子串算法分析报告
该代码旨在解决“在给定字符串s中寻找最长回文子串”的问题。不使用动态规划(需要 O(n2)O(n2) 空间),而是利用回文串“中心对称”的特性。遍历字符串中每一个可能的“中心”点,向两边扩展,检查能扩展出的最长回文串。因为回文串长度可能是奇数(中心一个字符)或偶数(中心两个相同字符),所以需要分别处理这两种情况。该代码是一段高质量、高效率的 C++ 算法实现。它巧妙地利用了Lambda 表达式封装了扩展逻辑,并通过数学公式和统一处理了奇偶回文串的索引计算,避免了编写两套逻辑。
2025-12-25 15:35:59
868
1
原创 基于分治法与蛮力法的二维平面最近点对求解系统设计与实现
这段代码展示了如何利用排序和提前终止条件,将条带检查的复杂度控制在常数级别(平均情况),从而保证整体算法的。关键优化:只检查Y坐标距离小于当前最小值min的点。且利用排序后的顺序,一旦超出范围立即停止(j循环)在条带区域中寻找最近点对。对条带内的点按Y坐标排序。
2025-12-25 15:21:10
776
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅