链表

作者: xcreal | 来源:发表于2018-07-24 09:36 被阅读0次

    头指针与头结点的异同

    头指针为链表的必要元素,指向第一个结点(若有头结点则指向头结点)

    头结点为链表的非必要元素(数据域一般存放链表长度)

    头插法

    p->next = (*L)->next;

    (*L)->next = p;

    尾插法

    void CreateListTill(LinkList *L, int n)

    {

    LinkList p,r;

    int i;

    srand(time(0));

    *L = (LinkList)malloc(sizeof(Node));

    r = *L;//r是指向尾部的结点

    for (i = 0; i < n; i++)

    {

    p = (LinkList)malloc(sizeof(Node));

    p->data = rand() % 100 + 1;

    r->next = p;

    r = p;

    }

    r->next = NULL;

    }

    L指的是整个单链表,而r是指向尾结点的变量

    循环结束后应将指针置为NULL以便确认尾部

    Status ClearList(LinkList *L)

    {

    LinkList p, q;

    p = (*L)->next;//p指向第一个结点

    while (p)

    {

    q = p->next;

    free(p);

    p = q;

    }

    (*L)->next = NULL;

    return OK;

    }

    相关文章

      网友评论

          本文标题:链表

          本文链接:https://www.haomeiwen.com/subject/wuejmftx.html