参考资料:《数据结构(C语言版)严蔚敏著》
版权说明:未经作者允许,禁止转载。如引用本文内容,需标明作者及出处。如本文侵犯了您的权益,请联系我删除并致歉。
文章说明:如文章中出现错误,请联系我更改。如您对文章的内容有任何疑问,也欢迎来与我讨论。
本文正在施工中...请稍等...


广义表的介绍

广义表一般记作,其中LS是广义表的名称,n是它的长度,可以是单个元素,也可以是广义表,分别称为广义表LS的原子和子表。习惯上,用大写字母表示广义表的名称,用小写字母表示原子。当广义表LS非空时,称第一个元素为LS的表头,称其余元素组成的表是LS的表尾。

性质:
1、广义表的元素可以是子表,而子表的元素还可以是子表。由此,广义表是一个多层次的结构。
2、广义表可为其他广义表所共享。
3、广义表可以是一个递归的表,即广义表也可以是其本身的一个子表。
4、非空广义表的表头可能是原子,也可能是广义表,而表尾一定是广义表。

ADT GList{数据对象:参考《数据结构(C语言描述)严蔚敏著》数据关系:参考《数据结构(C语言描述)严蔚敏著》基本操作:InitGList(&L);操作结果:创建空的广义表L。CreateGList(&L, S);初始条件:S是广义表的书写形式串。操作结果:由S创建广义表L。DestroyGList(&L);初始条件:广义表L存在。操作结果:销毁广义表L。CopyGList(&T, L);初始条件:广义表L存在。操作结果:由广义表L复制得到广义表T。GListLength(L);初始条件:广义表L存在。操作结果:求广义表L的长度,即元素个数。GListDepth(L);初始条件:广义表L存在。操作结果:求广义表L的深度。GListEmpty(L);初始条件:广义表L存在。操作结果:判定广义表L是否为空。GetHead(L);初始条件:广义表L存在。操作结果:取广义表L的头。GetTail(L);初始条件:广义表L存在。操作结果:取广义表L的头。InsertFirst_GL(&L, e);初始条件:广义表L存在。操作结果:插入元素e作为广义表L的第一元素。DeleteFirst_GL(&L, &e);初始条件:广义表L存在。操作结果:删除广义表L的第一元素,并用e返回其值。Traverse_GL(L, Visit());初始条件:广义表L存在。操作结果:遍历广义表L,用函数Visit处理每个元素。
}ADT GList

【数据结构】广义表的介绍相关推荐

  1. 数据结构(10)广义表的介绍与代码实现(c语言)

    文章目录 1.概念 2.图解 3.广义表的实现 1. 广义表的结点类型 2. 创建广义表 3. 输出广义表运算算法 4. 求广义表长度运算算法 5. 求广义表深度运算算法 6. 复制广义表运算算法 7 ...

  2. 数据结构-广义表详解(类C语言版)

    目录 广义表的概念 定义 表头 表尾 例 广义表的性质 广义表与线性表的区别 广义表的存储结构 头尾链表的存储结构 扩展线性链表的存储结构 ​ 广义表的基本运算 例 广义表的概念 定义 广义表通常记作 ...

  3. 数据结构 —— 广义表

    什么是广义表 广义表是一种非线性的数据结构,它的表元素可以是原子或者广义表的一种线性表的扩展结构. 广义表的长度:为表中最上层元素的个数 广义表的深度:为表中括号的最大层数 表头和表尾:当广义表非空时 ...

  4. C#数据结构-广义表和递归

    广义表是线性表的推广.定义是:一个广义表是n个元素的一个有限序列.差不多就是线性表元素里面还有线性表,这个表里面的元素称为原子,如果这个原子也是线性表称之为子表.表示为:GL=(a1,a2,a3... ...

  5. 不同表结构数据迁移_C语言:数据结构-广义表的存储结构

    广义表相对于线性表﹑数组﹑串等线性结构是较为复杂的结构,其元素可以具有不同的结构(可以是原子,也可以是列表),通常采用链式结构存储广义表. (1)表头.表尾链式存储 链式结构中用结点储存列表中的数据元 ...

  6. 广义表取表头表尾_数据结构广义表的递归算法

    Hello同学们,又到了美妙的星期三,很开心又和大家见面了.这次我们要来讲一讲关于广义表的那些事儿! 俗语说:"与其临渊羡鱼,不如退而结网." 希望通过今天的学习大家可以有所收获. ...

  7. C语言数据结构——广义表

    C语言数据结构中,广义表和数组一样,也是线性表的一种推广! 广义表的定义: 广义表 LS 为n(n≥0)个元素的有穷序列,记作: LS = (d1, d2, - dn) 其中: di:或为原子项(为具 ...

  8. 广义表的长度和深度怎么算_C语言:数据结构-广义表的定义和图形表示

    广义表又称为列表,是线性表的推广.一般记为:LS=(a1,a2, - ,an)其中LS是广义表(a1,a2, - ,an)的名称,ai(i=1,2,-,n)是表的元素.与线性表的区别是:其中的ai可以 ...

  9. 数据结构与算法-Part6——数组与广义表

    目录 一丶数组 1:一维数组 2:二维数组 1)二维数组的概念 2)二维数组的顺序存储结构 3)二维数组的遍历 3:在C#中自定义矩阵类 二丶稀疏矩阵 1:稀疏矩阵的三元组 2:稀疏矩阵三元组集合的顺 ...

最新文章

  1. 主从数据库之互为主备
  2. python绘制动态图-Python图像处理之gif动态图的解析与合成操作详解
  3. 雷军反击董明珠:感觉董总好像认输了似的
  4. vue 点击渲染ajax,vue中在页面加载时发送ajax请求获取数据渲染不到页面上
  5. Fiddler之为什么我没有抓到网络请求的js链接
  6. mate7安装android o,华为Mate7升级安卓6.0详细教程
  7. 表单内如何直接贴图而不用上传图片_重磅更新|偷偷告诉你,表单大师官网改版啦啦啦啦...
  8. 谭晓生大闹中国计算机中心,360高管谭晓生不满中国计算机大会拖堂和临时加议程,现场摔话筒发飙...
  9. 如何在ant脚本中获得svn版本号
  10. ASP.NET服务器对于请求的处理过程
  11. 2019年美赛B题思路详解
  12. 年龄的计算方式计算机函数,excel使用时间函数计算年龄 使用Excel函数计算年龄的三种方法...
  13. Restful API详解
  14. hdu 4747(区间更新)
  15. Python Selenium 疑难杂症解方(四):上传文件
  16. html 分页样式首页下一页,css中分页样式怎么设置
  17. 【开发工具】【perf】性能分析工具perf的编译和使用说明
  18. 这10种赚钱方法,用手机就可以做,看看哪种适合你?
  19. 9、使用容器数据卷部署MySQL
  20. 石家庄医学高等专科学校计算机试题,石家庄医学高等专科学校高职单招医学类对口职业测试题...

热门文章

  1. e1000网卡驱动小结
  2. 用c 语言循环抓取网页,C语言获取网页源代码
  3. gitlab代码管理
  4. Event Trigger 使用方法
  5. 2021年装载机司机(建筑特殊工种)找解析及装载机司机(建筑特殊工种)考试总结
  6. 蓝牙BLE---DA14585修改常用的广播信息
  7. 将树莓派变成行车记录仪
  8. 基因结构注释软件PASA安装全纪录
  9. Apache HAWQ集群的安装部署
  10. react 光标_带有React Framer运动部分的超酷自定义光标