- 博客(4)
- 收藏
- 关注
原创 Day04 24两两交换链表中的节点,19.删除链表的倒数第N个节点,面试题02.07.链表相交,142环形链表ll,总结
移除链表元素1.直接法,2.虚拟指针法这两种方法的时间复杂度均为O(n),其中n是链表中的节点数,因为每个节点最多被访问一次。这两种方法的空间复杂度都为O(1),因它们只是使用了有限的指针存储。两种方法的最终结果相同,但虚拟指针法在处理头节点时更加简洁有效。设计链表通过引入虚拟头节点,简化了链表操作,尤其是在处理链表的头部时,不需要单独处理特殊情况(如删除头节点)。使用size属性来动态管理链表的大小,使得确认输入索引有效性时可以轻松实现。翻转链表1.双指针法,2.递归。
2025-01-17 22:11:41
1486
原创 Day03 链表理论基础,203移除链表元素,707.设计链表,206.反转链表
示例 1: 输入:head = [1,2,6,3,4,5,6], val = 6 输出:[1,2,3,4,5]示例 3: 输入:head = [7,7,7,7], val = 7 输出:[]修改前一个节点的指针,使其指向要移除节点的下一个节点,从而“跳过”要移除的节点。修改前一个节点的指针,使其指向要移除节点的下一个节点,从而“跳过”要移除的节点。1.链表是一种线性数据结构,但与数组不同,链表中的元素在内存中不是连续存储的。如果移除的是头节点,通常需要特殊处理,因为头节点没有前一个节点。
2025-01-16 22:29:14
1693
原创 Day02 977.有序数组的平方,209.长度最小的子数组,59螺旋矩阵II,总结
1.二分查找:使用二分查找算法,每次取数组的中间元素与目标值比较,根据比较结果调整搜索范围,直到找到目标值或搜索范围为空。2.移除元素使用双指针,一个指针遍历数组,另一个指针指向新数组的下一个位置。当遍历指针指向的元素不等于给定值时,将其赋值给新数组指针指向的位置,并移动新数组指针。3.有序数组的平方由于负数平方后会变为正数,且可能大于之前的正数,因此不能直接平方后排序。
2025-01-15 21:16:47
1484
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅