数据结构基础代码-------------单链表

void List_Insert(LinkList &L) {//头插法
    L = (LinkList) malloc(sizeof(LNode));//申请一个头节点
    L->next = NULL;//头节点置为空
    Element x;//定义新元素的元素值
    LinkList s;//申请新节点的指针
    scanf("%d", &x);//获取新元素的元素值
    while (x != 6666) {

        s = (LinkList) malloc(sizeof(LNode));//申请一个新元素的空间
        s->data = x;
        s->next = L->next;
        L->next = s; //建立连接
        scanf("%d", &x);
    }

}

头插法建立链表



}
void List_Printf(LinkList L){//输出链表
    L = L->next;
    while (L!= NULL){
        printf("%2d",L->data);
        L = L->next;
    }
}

输出函数




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

链表结构体



void List_Tail_Insert(LinkList &L) {//尾插法
    L = (LinkList) malloc(sizeof(LNode));
    L->next = NULL;
    Element x;
    LinkList r, s;
    r = L;
    scanf("%d", &x);
    while (x != 9999) {
        s = (LinkList) malloc(sizeof(LNode));
        s->data = x;

        r->next = s;
        r = s;
        scanf("%d", &x);
    }
    r->next = NULL;
}

尾插法



你可能感兴趣的:(数据结构---C语言算法实现,数据结构)