python 链表的反转
Posted sea-stream
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 链表的反转相关的知识,希望对你有一定的参考价值。
code
#!/usr/bin/python # -*- coding: utf-8 -*- class ListNode: def __init__(self,x): self.val=x self.next=None def recurse(head,newhead): #递归,head为原链表的头结点,newhead为反转后链表的头结点 if head is None: return if head.next is None: newhead=head else : newhead=recurse(head.next,newhead) head.next.next=head head.next=None return newhead head=ListNode(1) #测试代码 p1=ListNode(2) # 建立链表1->2->3->4->None p2=ListNode(3) p3=ListNode(4) head.next=p1 p1.next=p2 p2.next=p3 newhead=None p=recurse(head,newhead) #输出链表4->3->2->1->None while p: print p.val p=p.next
输出
4 3 2 1
参考:
https://www.jb51.net/article/134706.htm
以上是关于python 链表的反转的主要内容,如果未能解决你的问题,请参考以下文章