反转链表

来源:互联网 发布:琳琅怎么绑定淘宝账号 编辑:程序博客网 时间:2024/05/29 15:22

题目描述

输入一个链表,反转链表后,输出链表的所有元素。


解题思路:
pHead始终指向要反转的结点
last 指向反转后的首结点
每反转一个结点,把pHead结点的下一个结点指向last, last指向pHead成为反转后首结点, 再把pHead向前移动一个结点直至None结束


# -*- coding:utf-8 -*-# class ListNode:#     def __init__(self, x):#         self.val = x#         self.next = Noneclass Solution:    # 返回ListNode    def ReverseList(self, pHead):        # write code here        # 没有结点或者是只有一个结点的时候,直接返回它本身即可        if not pHead or not pHead.next:            return pHead                last = None                while pHead:            tmp = pHead.next               pHead.next = last            last = pHead            pHead = tmp                return last


0 0
原创粉丝点击