题解 | #牛牛的链表添加节点#

牛牛的链表添加节点

https://www.nowcoder.com/practice/e33b79c2e15a41f9b541e73cd256124a

#include <stdio.h>
#include<stdlib.h>

typedef struct LNode{
    int data;
    struct LNode* next;
}LNode,*LinkList;

void toil_insert(LinkList L,int num){
    LNode* p = (LNode*)malloc(sizeof(LNode));
    p->data = num;
    p->next = NULL;
    LNode* r;
    for(r=L;r->next!=NULL;r=r->next);
    r->next = p;
    L->data++;
}

void pos_insert(LinkList L,int pos){
    LNode* p = (LNode*)malloc(sizeof(LNode));
    p->data = pos;
    p->next = NULL;
    LNode* q = L;
    while(pos--){
        q = q->next;
    }
    p->next = q->next;
    q->next = p;
    L->data++;
}

int main() {
    int n;
    scanf("%d",&n);
    int pos;
    scanf("%d",&pos);
    int* arr = (int*)calloc(n,sizeof(int));
    int i;
    for(i=0;i<n;i++){
        scanf("%d",arr+i);
    }
    LinkList L = (LNode*)malloc(sizeof(LNode));
    L->data = 0;
    L->next =NULL;
    for(i = 0;i<n;i++){
        toil_insert(L, *(arr+i));
    }
    pos_insert(L, pos);
    LNode* p;
    for(p = L;p->next!=NULL;p=p->next){
        printf("%d ",p->next->data);
    }

    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务