
算法与数据结构每日一练
文章平均质量分 82
映蝶
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
链表内指定区间反转
将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转,要求时间复杂度 O(n)给出的链表为 1→2→3→4→5→NULL1→2→3→4→5→。返回 1→4→3→2→5→NULL1→4→3→2→5→。数据范围: 链表长度 0<size≤10000<,链表中每个节点的值满足 ∣val∣≤1000∣。具体算法思路可以参考这位UP主的讲解。要求:时间复杂度 O(n)) ,空间复杂度 O(n)进阶:时间复杂度 O(n)),空间复杂度 O(1)),空间复杂度 O(1)原创 2024-12-01 09:46:20 · 837 阅读 · 0 评论 -
单链表的原地反转
给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。数据范围: 0≤n≤10000≤n≤1000要求:空间复杂度 O(1)O(1) ,时间复杂度 O(n)On如当输入链表{1,2,3}时,经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。以上转换过程如下图所示:算法思路:设立三个指针,prev,next,current,指针变化如下![在这里插入图片描述](https://i-blog。原创 2024-11-30 09:28:49 · 470 阅读 · 0 评论