当前位置:   article > 正文

C语言数据结构-单链表_数据结构 按照下面要求利用类c语言写出算法设某个单链表以la为头指针,链表中每个

数据结构 按照下面要求利用类c语言写出算法设某个单链表以la为头指针,链表中每个

 (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)

             

提示:本章的对应项目为学生成绩管理系统 ,大家学完单链表以后就可以尝试去做一个学生成绩管理系统啦!(http://t.csdn.cn/1VrMy

目录

初始链表:

链表的头指针和头结点:

 单链表:

单链表的读取:

单链表的插入:

单链表的删除:


初始链表:

链表是由n个结点链结成,第一个结点的存储位置叫做头指针,最后一个结点的指针为“空”      结点包括数据域和指针域。 

  1. //创建一个结点
  2. typedef struct monster{
  3. //数据域
  4. int id; //怪物编号
  5. char *name; //怪物名称
  6. //指针域
  7. struct monster *pNext;//指向下一节点的指针
  8. } Monster;

在给结构体赋值时,具体形式如下:

我们来画个图便于大家理解:

如图所示,每一个元素的指针域都保存的是下一个元素的地址,而最后一个元素的指针域是空指针NULL;每一个元素串联起来的形式就形成了一个链表。 

链表的头指针和头结点:

头指针:链表中第一个结点的存储位置。
头结点:在单链表的第一个结点前附设的一个结点。

两者的异同点:

 单链表:

链表的每一个结点中只包含一个指针域。 

  1. //单链表
  2. typedef struct student{
  3. int id; //学生编号
  4. char *name; //学生名称
  5. //指向下一节点的指针
  6. struct student *pNext;
  7. } Student;

 如下情况则不是单链表:

  1. //不属于单链表
  2. typedef struct student{
  3. int id; //学生编号
  4. char *name; //学生名称
  5. //指向下一节点的指针
  6. struct student *pNext;
  7. struct student *qNext;
  8. } Student;

单链表的读取:

获取第i个结点的数据
声明一个结点指针p指向链表第一个结点声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】

推荐阅读
相关标签