LeetCode 147 单链表插入排序,主要知识点,单链表翻转。

单链表翻转关键点只有4步。

1. 暂存Next节点

2. 将当前节点Next 指向Head的Next

3. 将Head的Next指向当前节点

4. 将暂存节点赋值给当前节点

 

/**
 * Definition for singly-linked list.
 * type ListNode struct {
 *     Val int
 *     Next *ListNode
 * }
 */
func insertionSortList(head *ListNode) *ListNode {
    dummy := &ListNode{}
    curr := head
    for curr != nil {
        mov := dummy
        for mov.Next!=nil && mov.Next.Val<curr.Val {
            mov=mov.Next
        }
        t:=curr.Next
        curr.Next=mov.Next
        mov.Next=curr
        curr=t
    }
    return dummy.Next
}

  

相关文章:

  • 2021-12-19
  • 2022-12-23
  • 2021-03-31
  • 2021-12-23
  • 2021-04-14
  • 2021-12-22
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-11
  • 2021-09-13
  • 2022-12-23
  • 2021-06-15
  • 2022-12-23
  • 2021-11-08
  • 2021-10-25
相关资源
相似解决方案