首页 > 其他分享 >广义表

广义表

时间:2023-10-21 10:46:48浏览次数:25  
标签:结点 ElemTag struct typedef GLNode 广义 指针

广义表的表示方法

一、头尾链表存储

广义表结点的分类

  1. 表结点:标志域、指示表头的指针域和指示表尾的指针域

  2. 原子结点:标志域和值域

一对确定的表头和表尾可唯一确定列表

typedef enum{ATOM, LIST} ElemTag;
typedef struct GLNode {
    ElemTag tag;
    union {
        AtomType atom; // 原子结点的值域
        struct {struct GLNode *hp, *tp;} ptr; // 表结点的指针域
    };
} *GList;

二、扩展线性链表存储

与上述方法的不同点:原子结点也有三个域。

typedef enum{ATOM, LIST} ElemTag;
typedef struct GLNode {
    ElemTag tag;
    union { // 两种结点的联合部分
        AtomType atom; // 原子结点的值域
        struct GLNode *hp; // 表结点的表头指针
    };
    struct GLNode *tp; /// 指向下一个结点的指针
} *GList;

注意:广义表E(a, E)的深度是无穷。因为它自己是自己的一个元素。

标签:结点,ElemTag,struct,typedef,GLNode,广义,指针
From: https://www.cnblogs.com/iszxh/p/17778576.html

相关文章

  • [Резюме] 广义李超线段树
    前言“李超线段树,简称李超树。它支持插入直线或线段,并查询某个横坐标处的最值。”本文以最大值为例,讨论广义李超线段树,与传统的李超线段树不同,它插入的是函数而非直线或线段,但为了保证正确的时间复杂度,对函数有较严格限制,见条件。不展开讨论对于\(x=k\)时函数值相等时......
  • 73rd 2023/10/4 模拟赛总结55&广义串并联图
    这次的比赛成绩并不令人失望,因为早有准备很用心去打的一场比赛,T1T2一开始在看题目时感觉可以很容易切掉T1感觉太简单了,就再看了一遍又一遍T2动手打的时候,感觉T1没那么简单,就在想了一下,想出来了正解,但给的第三个大数据总过不了然后就先放了一下T1,去打T2,因为感觉T2很简单,而且思......
  • R语言非线性回归和广义线性模型:泊松回归、伽马回归、逻辑回归、Beta回归分析机动车事
    全文链接:https://tecdat.cn/?p=33781原文出处:拓端数据部落公众号我们使用广义线性模型(GeneralizedLinearModels,简称GLM)来研究客户的非正态数据,并探索非线性关系。GLM是一种灵活的统计模型,适用于各种数据类型和分布,包括二项分布、泊松分布和负二项分布等非正态分布。通过GLM,我......
  • R语言广义相加(加性)模型(GAMs)与光滑函数可视化|附代码数据
    原文链接:http://tecdat.cn/?p=23509 原文出处:拓端数据部落公众号最近我们被客户要求撰写关于GAMs的研究报告,包括一些图形和统计输出。我们在研究工作中使用广义加性模型(GAMs)。mgcv软件包是一套优秀的软件,可以为非常大的数据集指定、拟合和可视化GAMs。这篇文章介绍一下广义加......
  • R语言随机波动模型SV:马尔可夫蒙特卡罗法MCMC、正则化广义矩估计和准最大似然估计上证
    全文链接:http://tecdat.cn/?p=31162最近我们被客户要求撰写关于SV模型的研究报告,包括一些图形和统计输出。本文做SV模型,选取马尔可夫蒙特卡罗法(MCMC)、正则化广义矩估计法和准最大似然估计法估计。模拟SV模型的估计方法:  sim<-svsim(1000,mu=-9,phi=0.97,sigma......
  • R语言用普通最小二乘OLS,广义相加模型GAM ,样条函数进行逻辑回归LOGISTIC分类|附代码数
    原文链接:http://tecdat.cn/?p=21379 原文出处:拓端数据部落公众号 最近我们被客户要求撰写关于回归的研究报告,包括一些图形和统计输出。本文我们对逻辑回归和样条曲线进行介绍。logistic回归基于以下假设:给定协变量x,Y具有伯努利分布,  目的是估计参数β。回想一下,针对该......
  • 【数据结构】第四章 多维数组与广义表
    4.1数组的逻辑结构和基本运算数组可看成是一种特殊的线性表,其特殊在于,表中的数组元素本身也是一种线性表。在早期的高级语言中,数组是唯一可供使用的数据类型。由于数组中各元素具有统一的类型,并且数组元素的下标一般具有固定的上界和下界,因此,数组的处理比其他复杂的结构更为简单。......
  • Python用PyMC贝叶斯GLM广义线性模型、NUTS采样器拟合、后验分布可视化
    全文链接:https://tecdat.cn/?p=33436原文出处:拓端数据部落公众号尽管贝叶斯方法相对于频率主义方法的理论优势已经在其他地方进行了详细讨论,但其更广泛采用的主要障碍是“可用性”。而使用贝叶斯方法,客户可以按照自己认为合适的方式定义模型。线性回归在此示例中,我们将帮助客......
  • 路径规划算法:基于广义正态分布优化的机器人路径规划算法- 附matlab代码
    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......
  • Stata广义矩量法GMM面板向量自回归PVAR模型选择、估计、Granger因果检验分析投资、收
    原文链接:http://tecdat.cn/?p=24016原文出处:拓端数据部落公众号摘要最近我们被要求撰写关于广义矩量法GMM的研究报告,包括一些图形和统计输出。面板向量自回归(VAR)模型在应用研究中的应用越来越多。虽然专门用于估计时间序列VAR模型的程序通常作为标准功能包含在大多数统计软件......