1. 首先是链表翻转
效果: 0->1->2->3 ...... ->9 变为 9->8->7->......->0
class NodeList:
def __init__(self,x):
self.next = None
self.val = x
def reverse(root):
save = []
head = root
while(head!=None):
save.append(head)
head = head.next
p = head = save.pop()
while(save):
head.next = save.pop()
head = head.next
head.next = None
return p
head = tmp = NodeList(-1)
for i in range(10):
tmp.next = NodeList(i)
tmp = tmp.next
res = reverse(head.next)
while(res!=None):
print(res.val)
res = res.next
效果:效果: 0->1->2->3 ...... ->9 变为 0->2->4->6->8->1->3->.....