Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
让他很烦人
Fucking Algorithm
提交
415dffe8
F
Fucking Algorithm
项目概览
让他很烦人
/
Fucking Algorithm
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
Fucking Algorithm
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
415dffe8
编写于
3月 20, 2021
作者:
B
BruceCat
提交者:
GitHub
3月 20, 2021
浏览文件
操作
浏览文件
下载
差异文件
【92. 反转链表 II】【C++】
【92. 反转链表 II】【C++】
上级
5771430a
06c5711b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
48 addition
and
0 deletion
+48
-0
数据结构系列/递归反转链表的一部分.md
数据结构系列/递归反转链表的一部分.md
+48
-0
未找到文件。
数据结构系列/递归反转链表的一部分.md
浏览文件 @
415dffe8
...
...
@@ -220,6 +220,54 @@ ListNode reverseBetween(ListNode head, int m, int n) {
======其他语言代码======
### c++
[
shilei
](
https://github.com/ShileiGuo
)
提供C++解法代码:
思想:
1.
head表示需要反转的头节点,pre表示需要反转头节点的前驱节点
2.
对于从m到n的节点反转,需要反转n-m次,将head的next节点移动到需要反转链表部分的首部,需要反转链表部分剩余节点依旧保持相对顺序即可
3.
示例 当m=2, n=5时
第一次反转:1(pre) 2(head) 3(next) 4 5 反转为 1 3 2 4 5
第二次反转:1(pre) 3 2(head) 4(next) 5 反转为 1 4 3 2 5
第三次发转:1(pre) 4 3 2(head) 5(next) 反转为 1 5 4 3 2
```
CPP
class Solution {
public:
ListNode* reverseBetween(ListNode* head, int m, int n) {
//初始化哨兵节点
ListNode* dummy=new ListNode(-1);
//初始化待反转区间的前一个节点
ListNode* pre=dummy;
//哨兵节点下一个节点指向head头节点
dummy->next=head;
//获取待反转节点的前一个节点
for(int i=0;i<m-1;i++)
pre=pre->next;
//获取待反转节点的第一个节点
head=pre->next;
//迭代反转n-m次,将head的next节点移动到需要反转链表部分的首部
for(int i=m;i<n;i++){
ListNode* t=head->next;
head->next=t->next;
t->next=pre->next;
pre->next=t;
}
//返回哨兵节点
return dummy->next;
}
};
```
### python
[
DiamondI
](
https://github.com/DiamondI
)
提供python3版本代码:
思路:递归。时间复杂度为O(n),由于递归调用需要借助栈的空间,因此空间复杂度亦为O(n)。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录