leetcode之206反转链表Golang

 

 

使用迭代法

  • 保存前一个结点,头结点的前一个结点为nil

  • 保存后一个结点

  • 将当前结点的下一个结点指向前一个结点

  • 修改指针,将指向前一个结点的指针指向当前结点,将指向当前结点的指针指向后一个结点

    nextNode=head.Next

    head.Next=pre

    pre=head

    head=nextNode

代码如下:

func reverseList(head *ListNode) *ListNode {
    var pre *ListNode = nil
    for head != nil {
        head.Next, head, pre = pre, head.Next, head
    }
    return pre
}

  

 

posted @ 2020-09-25 13:34  胖胖咩  阅读(111)  评论(0)    收藏  举报