python 单链表

class Node:
	
	def __init__(self, cargo = None, next = None):
		self.cargo = cargo
		self.next = next
		
	def __str__(self):
		return str(self.cargo)
		
node1 = Node("one")
node2 = Node("two")
node1.next = node2
node3 = Node("three")
node2.next = node3
print (node1)
print (node2)
print (node3)

def printlist(anode):
	head = anode
	while head != None:
		print (head)
		head = head.next

print ("Here we print our list from head to tail:")
printlist(node1)

def printBackward(anode): 
	if anode == None: # empty linked list
		return 
	head = anode       # head
	tail = anode.next  # others but head
	printBackward(tail) # recursion
	print (head)        # print head


print ("Here we print our list from tail to head:")
printBackward(node1)


def printBackwardbetter(anode):
	if anode == None:  # anode is None
		return          # end it
	printBackwardbetter(anode.next)  # recursion print
	print (anode)       # print anode

print ("Here is better version:")
printBackwardbetter(node1)	


def removeSecond(list):
	if list == None:
		return 
	first = list
	second = list.next
	first.next = second.next
	second.next = None
	return second

print ("After remove second:")
removed = removeSecond(node1)
printlist(node1)
	
input()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值