zoukankan      html  css  js  c++  java
  • DS-6-单链表的建立

    单链表的建立

    Step1:初始化一个单链表

    Step2:每次取一个数据元素,插入到表尾/表头

    尾插法建立单链表:

    LinkList List_TailInsert(LinkList &L) {  //正向建立单链表 
        int x;
        L = (LinkList)malloc(sizeof(LNode)); //建立头结点 
        LNode *s,*r = L;     //r为表尾指针 
        scanf("%d",&x);      //输入结点的值 
        while(x!=9999){      //输入9999表示结束 
            s = (LNode*)malloc(sizeof(LNode)); 
            s->data = x; 
            r->next = s; 
            r = s;         //r指向新的表尾结点 
            scanf("%d",&x); 
        } 
        r->next = NULL;   //尾结点指针置空 
        return L; 
    }

    头插法建立单链表:

    LinkList List_HeadInsert(LinkList &L) {  //逆向建立单链表 
        LNode *s; 
        int x; 
        L = (LinkList)malloc(sizeof(LNode)); //创建头结点 
        L->next = NULL;                      //初始为空链表 
        scanf("%d",&x);                      //输入结点的值 
        while(x! = 9999){                    //输入 9999 表示结束 
            s = (LNode*)malloc(sizeof(LNode)); //创建新结点 
            s->data = x; 
            s->next = L->next; 
            L->next = s;                     //将新结点插入表中,L为头指针 
            scanf("%d",&x); 
        } 
        return  L; 
    }

    头插法、尾插法:核心就是之前写过的初始化操作、指定结点的后插操作

  • 相关阅读:
    - 错误笔记
    只是一个没有人知道的蒟蒻
    省选前模板复习
    数学知识小结#1
    写在NOIP2018后
    Atcoder&CodeForces杂题11.7
    Atcoder&CodeForces杂题11.6
    [NOIP11.1模拟赛]补番报告
    [JZOJ5281]钦点题解--瞎搞+链表
    [JZOJ5280]膜法师题解--思维+前缀和
  • 原文地址:https://www.cnblogs.com/swefii/p/13151872.html
Copyright © 2011-2022 走看看