def sublist(head):
current=head
#temp=current #If my list is 3->2->1->4->5->6 it goes into an infinite loop
while ((current.next is not None) and current.value < current.next.value ):
temp=current
current=current.next
start=current
while ((current.next is not None) and current.value > current.next.value ):
current=current.next
last=current.next
current.next=None
first=reverse_linked_list(start)
temp.next=first
while first.next is not None:
first=first.next
first.next=last
while head:
print head.value
head=head.next
return head
代码的工作:我将代码的输入作为无序子列表提供,其中列表中的子列表按降序排列,而链表的其余部分按升序排列。
该代码适用于 1、2、3、4、5、9、8、7、10 和 1、10、9、8、7、6、5 等输入,即中间和末尾的未排序列表,但如果列表在开头未对 3、2、1、4、5、6 等输入进行排序,则它不起作用!谁能帮帮我请..