- 博客(4)
- 收藏
- 关注
原创 代码随想录算法训练营D4|24. 两两交换链表中的节点,19.删除链表的倒数第N个节点,面试题 02.07. 链表相交,142.环形链表II,链表总结
该题需要弄清楚如何翻转节点(cur指针的位置)以及判断反转结束的条件。今日任务未完成,明日恶补!
2024-08-17 23:54:59 71
原创 代码随想录算法训练营D3|链表理论基础,203.移除链表元素 ,707.设计链表,206.反转链表
由于链表由指针串联,当涉及对链表操作时,是需要至少2个临时指针来作为遍历的指向或者信息缓存。本题建议使用双指针法(实际我认为是多指针,都三个了),后续复习到递归时再尝试使用递归解此题。
2024-08-16 21:20:00 135
原创 代码随想录算法训练营D2|209. 长度最小的子数组,59.螺旋矩阵II,58.区间和
暴力是窗口的起点遍历去找满足条件的子数组(因为每个起点首次满足条件的都是当前起点的最小长度数组),滑动窗口是窗口的终点遍历去找最小的且满足条件的子数组(最后一次循环都是当前遍历里终点的最小长度数组)for循环需要在开始前已知具体的迭代次数,while循环适用于执行前不确定循环次数的情况,适合需要动态调整的条件,较为灵活。的思想:重复利用计算过的子数组之和,从而降低区间查询需要累加计算的次数。,就是不断的调节子序列的起始位置和终止位置,从而得出我们要想的结果。矩阵中间的坐标和起始位置有关。
2024-08-15 22:28:43 265
原创 代码随想录算法训练营D1|数组理论基础,704. 二分查找,27. 移除元素
双指针在一个for循环下完成双层for循环的操作,快指针代表外层for循环,寻找组成新数组的元素,慢指针则代表新数组的下标。由于数组的元素在内存地址中是连续的,不能单独删除数组中的某个元素,只能覆盖这一特点,移除数组中的元素需使用。两种方法的空间复杂度都为O(1),暴力解法的时间复杂度为O(N^2),双指针的时间复杂度为O(N)。根据数组下标区间的定义(左闭右闭/左闭右开)来决定边界条件。双指针法在数组和链表的操作中比较常见。(双层for循环)或。
2024-08-14 22:49:49 171
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人