链表奇偶重拍

将链表按照index,先odd index再odd index重排

空间复杂度O(1)

时间复杂度O(n)

主要是考虑到 odd=odd->next->next后,原始list中odd后断开,找不到odd->next,故一次两个推进,odd和even

ListNode* odd = head;
ListNode* even = head->next;
ListNode* evenhead = even;
if(odd!=null){
while(even!=NULL&&even->next!=NULL){
odd->next = odd->next->next;
even->next = even->next->next;
odd = odd->next;
even = even->next;
}
odd->next = evenhead;
}

猜你喜欢

转载自www.cnblogs.com/lqerio/p/11701488.html