牛客题霸 NC21 链表内指定区间反转
Posted Starzkg
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了牛客题霸 NC21 链表内指定区间反转相关的知识,希望对你有一定的参考价值。
https://www.nowcoder.com/practice/b58434e200a648c589ca2063f1faf58c
解决方案
Go
func reverseBetween(head *ListNode, m int, n int) *ListNode {
// write code here
return solve(head, m, n, 1, nil, head)
}
func solve(head *ListNode, m int, n int, index int, pre *ListNode, h *ListNode) *ListNode {
if index < m {
head.Next = solve(head.Next, m, n, index+1, head, head.Next)
return head
}
if index >= m && index <= n {
node := head.Next
head.Next = pre
return solve(node, m, n, index+1, head, h)
}
h.Next = head
return pre
}
参考文章
以上是关于牛客题霸 NC21 链表内指定区间反转的主要内容,如果未能解决你的问题,请参考以下文章