题解 | #牛牛的链表交换#

牛牛的链表交换

https://www.nowcoder.com/practice/0e009fba6f3d47f0b5026b5f8b0cb1bc

#include <stdio.h>
typedef struct Node{
    int data;
    struct Node* next;
}node;
node* cai(int v){
    node* k=(node*)malloc(sizeof(node));
    k->data=v;
    k->next=NULL;
    return k;
}
int main() {
    int n;
    scanf("%d",&n);
    node* head=NULL;
    node* tail=NULL;
    for(int i=0;i<n;i++){
        int v;
        scanf("%d",&v);
        node* f=cai(v);
        if(head==NULL){
            head=f;
            tail=f;
        }else{
            tail->next=f;
            tail=f;
        }
    }
   // node* kk=head->next->next;
   // node* k=head;
   // head=head->next;
   // head->next=k;
   // k->next=kk;
    node* k=head->next;
    head->data=head->data^k->data;
    k->data=head->data^k->data;
    head->data=head->data^k->data;

    node* kk=head;
    while(kk->next->next!=NULL){
        kk=kk->next;
    }
    tail->data=tail->data^kk->data;
    kk->data=tail->data^kk->data;
    tail->data=tail->data^kk->data;

    

    node* p=head;
    while(p!=NULL){
        printf("%d ",p->data);
        p=p->next;
    }
     p=head;
    while(p!=NULL){
        node* t=p;
        p=p->next;
        free(t);
    }    
    return 0;
}

全部评论

相关推荐

大摆哥:刚好要做个聊天软件,直接让你帮他干活了
点赞 评论 收藏
分享
02-16 13:52
门头沟学院 Java
给🐭🐭个面试机会吧:嘿,mvbatis
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务