// 非递归翻转链表

var reverseList = function(head) {

  let pre =null

  while(head){
    let next = head.next
    head.next = pre
    pre = head
    head = next
  }

  return pre
}

 

 

 

// 递归翻转链表

var reverseList = function(head) {

  if(!head || !head.next){ // 第一个是链表为null的情况,第二个是正常的判断结束条件
    return head
  }


  let reverse = reverseList(head.next)
  head.next.next = head
  head.next = null

  return reverse

}