美文网首页
10-2 链表反转

10-2 链表反转

作者: Rumbles | 来源:发表于2019-04-14 22:16 被阅读0次

    链表反转

    ///> 链表反转  head 还是head 因为head是没有值的 其他节点都有值
    ///> 错误的点 two->next 赋值了改变了的值  如何让最后一个节点的值不改变
    ///> one->next 是下一个节点 head 指向one->next。保留上一个节点 使得
    void reverseList(LinkList* head) {
        if(head==NULL) return NULL;
        
        LinkList *one = head->next;
        
        LinkList *temp = one;
        
        while (one->next) {
            ///> 这次的最后一个节点
            LinkList *two = one->next;
            ///> 下次的最后一个节点
            LinkList *three = two->next;
            
            ///> 指向最后一个节点
            head->next = two;
            ///> 指向下次的最后一个节点
            one->next = three;
            ///> 这次的最后一个节点 指向上次的最后一个节点
            two->next = temp;
      
            ///> 保存尾部节点
            temp = two;
        }
    }
    

    相关文章

      网友评论

          本文标题:10-2 链表反转

          本文链接:https://www.haomeiwen.com/subject/bmjewqtx.html