反转链表 II
给你单链表的头指针 head 和两个整数  left 和 right ,其中  left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表
链接
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
   | function reverseBetween(   head: ListNode | null,   left: number,   right: number ): ListNode | null {   if (left === 1) {     return reverse(head, right)   }   head.next = reverseBetween(head.next, left - 1, right - 1)   return head } const reverse = (function () {   let back = null   return function (head: ListNode, right: number): ListNode {     if (right === 1) {       back = head.next       return head     }     const last: ListNode = reverse(head.next, right - 1)     head.next.next = head     head.next = back     return last   } })()
   |