给定一个单链表的头部节点 head,链表长度为 N,如果 N 是偶数,那么前 N / 2 个节点算作左半区,后 N / 2 个节点算作右半区;如果 N 为奇数,那么前 N / 2 个节点算作左半区,后 N / 2 + 1个节点算作右半区。左半区从左到右依次记为 L1->L2->...,右半区从左到右依次记为 R1->R2->...,请将单链表调整成 L1->R1->L2->R2->... 的形式。
单链表的头节点 head。
在给定的函数内返回链表的头指针。
6 1 2 3 4 5 6
1 4 2 5 3 6
保证链表的长度不大于1000000
n=int(input()) number_list=list(map(int,input().split())) #分左右区 left_list=number_list[:n//2] right_list=number_list[n//2:] ans=[] for i in range(len(left_list)): ans.append(left_list[i]) ans.append(right_list[i]) #多了一个元素 if n%2!=0: ans.append(right_list[-1]) print(' '.join(map(str,ans)))