题解 | #重排链表#

重排链表

http://www.nowcoder.com/practice/3d281dc0b3704347846a110bf561ef6b

 * struct ListNode {
 *	int val;
 *	struct ListNode *next;
 * };
 *
 * C语言声明定义全局变量请加上static,防止重复定义
 */

/**
 * 
 * @param head ListNode类 
 * @return  void
 */
void reorderList(struct ListNode* head ) {
    // write code here
    if((!head)||!head->next||!head->next->next)
        return ;
    else{
        struct ListNode*p=head,*q=head,*m=NULL;
        while(q->next){
        while(p->next->next){
            p=p->next;
            m=p->next;
        }
            if(q==p)
                return;
        p->next=NULL;
        m->next=q->next;
        q->next=m;
        q=q->next->next;
        p=q;
    }
    }
}
全部评论
喵啊
点赞 回复 分享
发布于 2023-03-12 17:04 湖北

相关推荐

点赞 评论 收藏
分享
起名字真难233:人家只有找猴子的预算,来个齐天大圣他们驾驭不住呀😂😂
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
4
2
分享

创作者周榜

更多
牛客网
牛客企业服务