• 结构体与共用体04 零基础入门学习C语言56


    第十章:结构体与共用体04

     

    让编程改变世界

    Change the world by program


     

    链表例题讲解

      [caption id="attachment_187" align="aligncenter" width="263"] 链表例题[/caption]   今天,我们将以图文并茂的方式来展示链表的具体创建过程!! [caption id="attachment_188" align="aligncenter" width="288"] 链表原理[/caption]   我们约定学号不会为零,如果输入的学号为0,则表示建立链表的过程完成,该结点不应连接到链表中。 如果输入的p1->num不等于0,则输入的是第一个结点数据(n=1),令head=p1,即把p1的值赋给head,也就是使head也指向新开辟的结点p1所指向的新开辟的结点就成为链表中第一个结点。   再开辟一个结点并使p1指向它,并输入该结点的数据。 [caption id="attachment_189" align="aligncenter" width="300"] 链表原理[/caption] [caption id="attachment_190" align="aligncenter" width="300"] 链表原理[/caption] [caption id="attachment_191" align="aligncenter" width="300"] 链表原理[/caption]  

    对链表的删除操作

      从一个动态链表中删去一个结点,并不是真正从内存中把它抹掉,而是把它从链表中分离开来,只要撤销原来的链接关系即可。 [caption id="attachment_192" align="aligncenter" width="300"] 链表的删除操作[/caption]  

    随堂练习

    题目:写一函数以删除动态链表中指定的结点。  

    解题思路:

    一、从p指向的第一个结点开始,检查该结点中的num值是否等于输入的要求删除的那个学号。 二、如果相等就将该结点删除,如不相等,就将p后移一个结点,再如此进行下去,直到遇到表尾为止。 三、可以设两个指针变量p1和p2,先使p1指向第一个结点 。 四、如果要删除的不是第一个结点,则使p1后移指向下一个结点(将p1->next赋给p1),在此之前应将p1的值赋给p2 ,使p2指向刚才检查过的那个结点。 五、将以上几点我们综合得出算法流程图: [caption id="attachment_193" align="aligncenter" width="300"] 链表练习[/caption] [buy] 获得所有教学视频、课件、源代码等资源打包 [/buy] [Downlink href='http://kuai.xunlei.com/d/LBLVEDXIDOAO']视频下载[/Downlink]
  • 相关阅读:
    PHP为fopen,file_get_contents等函数请求web地址时增加Http头的方法
    php一些技术要点连接地址
    PHP之open_ssl
    加密解密知识 php非对称加密
    python摸爬滚打之day17----类与类之间的关系
    python摸爬滚打之day16----类的成员
    python摸爬滚打之day15----初识类
    python摸爬滚打之day14----内置函数,递归函数
    python摸爬滚打之day12----生成器, 各种生成式
    python摸爬滚打之day11----函数闭包,迭代器
  • 原文地址:https://www.cnblogs.com/LoveFishC/p/3847044.html
Copyright © 2020-2023  润新知