首页 > 其他 > 详细

剑指offer-----单链表反转

时间:2020-02-21 21:09:06      阅读:78      评论:0      收藏:0      [点我收藏+]

看到一个很好的讲解博客,转了

原博客地址:https://blog.csdn.net/gongliming_/article/details/88712221

class Node(object):
    def __init__(self, elem, next_=None):
        self.elem = elem
        self.next = next_
 
def reverseList(head):
    if head == None or head.next==None:  # 若链表为空或者仅一个数就直接返回
        return head 
    pre = None
    next = None
    while(head != None): 
        next = head.next     # 1
        head.next = pre     # 2
        pre = head      # 3
        head = next      # 4
    print(pre)
    return pre

if __name__ == __main__:
    l1 = Node(3)    # 建立链表3->2->1->9->None
    l1.next = Node(2)
    l1.next.next = Node(1)
    l1.next.next.next = Node(9)
    l = reverseList(l1)
    print (l.elem, l.next.elem, l.next.next.elem, l.next.next.next.elem)

技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 其他过程依此类推。。。。。。。

剑指offer-----单链表反转

原文:https://www.cnblogs.com/pythonbigdata/p/12343014.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!