江苏网站建设找哪家,东莞营销型网站外包,惠州seo推广外包,什么叫电商怎么做电商文章目录 题目描述法一#xff1a;寻找链表中点、链表逆序、链表合并 题目描述 法一#xff1a;寻找链表中点、链表逆序、链表合并 void reorderList(ListNode* head){if(headnullptr){return;}// 找到中点 ListNode* mid FindMiddle(head);ListNode *h1head, *h2mid-ne… 文章目录 题目描述法一寻找链表中点、链表逆序、链表合并 题目描述 法一寻找链表中点、链表逆序、链表合并 void reorderList(ListNode* head){if(headnullptr){return;}// 找到中点 ListNode* mid FindMiddle(head);ListNode *h1head, *h2mid-next;mid-nextnullptr; // 逆序后半部分h2 reverseList(h2);// 合并链表mergeList(h1, h2);} ListNode* FindMiddle(ListNode* head){ListNode *slowhead, *fasthead;while(fast-next!nullptr fast-next-next!nullptr){slow slow-next;fast fast-next-next;}return slow;}ListNode* reverseList(ListNode* head){ListNode* prevnullptr;ListNode* cur head;while(cur){ListNode* next cur-next;cur-next prev;prev cur;cur next;}return prev;}void mergeList(ListNode* l1, ListNode* l2){ListNode* l1_tmp;ListNode* l2_tmp;while(l1 l2){l1_tmp l1-next;l2_tmp l2-next;l1-next l2;l1 l1_tmp;l2-next l1;l2 l2_tmp;}}