본문 바로가기

Datastructure

[연결리스트] #3. 연결리스트의 삭제와 삽입

728x90
반응형

연결리스트 삽입

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

typedef int element;

typedef struct ListNode {
	element data;
	struct ListNode *link;
}ListNode;

ListNode* insert(ListNode *head, ListNode *pre, int value){
    ListNode *p=(ListNode *)malloc(sizeof(ListNode));

    p->data=value;
    p->link=pre->link;
    pre->link=p;

    return head;
}

연결리스트 삭제

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

typedef int element;

typedef struct ListNode {
	element data;
	struct ListNode *link;
}ListNode;

ListNode* delete(ListNode *head, ListNode *pre){
    ListNode *removed;
    removed=pre->link;
    pre->link=removed->link;

    free(removed);

    return head;
}
728x90
반응형
댓글