码迷,mamicode.com
首页 > 编程语言 > 详细

python 链表的反转

时间:2019-07-20 10:18:13      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:ret   pre   elf   测试   nod   反转   tps   div   style   

 

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 链表的反转

标签:ret   pre   elf   测试   nod   反转   tps   div   style   

原文地址:https://www.cnblogs.com/sea-stream/p/11216577.html

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