LeetCode 206反转链表 [javsScript]

反转一个单链表。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
进阶:
你可以迭代或递归地反转链表。你能否用两种方法解决这道题?

从头结点开始,逐一反转当前节点即可

var reverseList = function(head) {
    if(head==null){return [];}
        var pre;
      while(head!=null){
          //记录当前节点的下一个节点指针
          var next=head.next;
          //修改当前节点的指针
          head.next=pre;
          //向右移动pre和head指针
          pre=head;
          //pre为处理完的头结点
          //head 指向待处理的部分
          head=next;
      }
    return pre;
};

猜你喜欢

转载自blog.csdn.net/qq_40547126/article/details/82148594