题解 | #链表内指定区间反转#

链表内指定区间反转

http://www.nowcoder.com/practice/b58434e200a648c589ca2063f1faf58c

package main
import . "nc_tools"

//头插法
func reverseBetween( head *ListNode ,  m int ,  n int ) *ListNode {
    // write code here
    if head == nil || head.Next == nil {
        return head 
    }

    dummy := &ListNode{Next : head}
    pre := dummy

    for i := 1; i < m; i++ {
        pre = pre.Next
    }

    cur := pre.Next
    for i := m; i < n; i++ {
        temp := cur.Next
        cur.Next = temp.Next
        temp.Next = pre.Next
        pre.Next = temp
    }
    return dummy.Next
}
全部评论

相关推荐

03-14 16:04
已编辑
安徽农业大学 算法工程师
痴心的她allin秋...:啥笔试都挂怎么办,某9本考研下岸,练也没时间了,对算法也不感兴趣,大部分大厂笔试只能A0-1个😄
米哈游笔试
点赞 评论 收藏
分享
好奇的伊登准备进厂:找了两个多月沟通六千多,不到十个面试至今仍未找到实习,看完你还想坚持下去吗
点赞 评论 收藏
分享
评论
6
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务