码迷,mamicode.com
首页 > 其他好文 > 详细

面试题24:反转链表

时间:2019-08-11 19:05:07      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:表头   __init__   inter   def   循环   utf-8   write   试题   没有   

这道题感觉很难,还没有理解

几天后:

技术图片

# -*- coding:utf-8 -*-
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None
class Solution:
    # 返回ListNode
    def ReverseList(self, pHead):
        # write code here
        # 1.将现有的头换成尾,尾部的next为空
        # 2.将从第二个node开始,循环将next指向前一个
        # 3.需要有一个指针一直指向还没有反转的链表的表头
        if pHead == None:
            return None
        if pHead.next == None:
            return pHead
        
        leftpointer = pHead
        midpointer = pHead.next
        rightpointer = midpointer.next
        leftpointer.next = None
        while rightpointer != None:
            midpointer.next = leftpointer
            leftpointer = midpointer
            midpointer = rightpointer
            rightpointer = rightpointer.next
        midpointer.next = leftpointer
        return midpointer

  

面试题24:反转链表

标签:表头   __init__   inter   def   循环   utf-8   write   试题   没有   

原文地址:https://www.cnblogs.com/ivyharding/p/11314030.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!