数据结构学习笔记-3

 typedef struct Node
{
    ElemType data;       //数据域
    struct Node* Next;   //存放后继结点地址
} Node;

typedef struct Node* LinkList

头插法建立单链表(C语言实现)

void CreateListFromHead(LinkList *L, int n)
{

    LinkList p;
    int i;

    srand(time(0)); //初始化随机种子

    *L = (LinkList)malloc(sizeof(Node));
    (*L)->next = NULL;

    for(i=0; i<n; i++)
    {
        p = (LinkList)malloc(sizeof(Node));
        p->data = rand()%100+1;
        p->next = (*L)->next;
        (*L)->next = p;
    }        
 }

尾插法建立单链表(C语言实现)

void CreateListFromTail(LinkList *L, int n)
{

    LinkList p,r;
    int i;

    srand(time(0)); //初始化随机种子

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

    for(i=0; i<n; i++)
    {
        p = (LinkList)malloc(sizeof(Node));
        p->data = rand()%100+1;

        r->next = p;
        r = p;
    }

    r->next = NULL;        
 }