在众多数据结构当中,线性表是最简单、也是最基本的一个。线性表按存储结构分,可 分为顺序表和链表,它们各有特色。本程序主要目的在于帮助同学熟练掌握线性表的基本 操作在顺序存储结构上的实现,顺序表的优点是可以实现随机存取,用数组对其进行定义, 主要操作时针对数组下标的运算。本实验相对比较简单,通过本实验,对顺序表基本操作及 其组合应用的演练,加深对线性表顺序存储方法及其基本操作的理解,为以后进一步学习更 复杂的数据结构打下基础。
1
线性表的实现代码 #include using namespace std; template class List { public: virtual void clear()=0;//清空 virtual int leng()=0;//求线性表的长度 virtual Telem gete(int loc,Telem ⪙)=0;//返回第i个元素的值 virtual int loct(Telem& el)=0;//查找,若找到返回元素的值,否则返回0 virtual bool insert(int loc,Telem& el)=0;//将el插入在loc的位置上 virtual Telem dele(int loc)=0;//删除loc位置的值 virtual bool full()=0;//判断线性表是否为满 virtual bool empt()=0;//判断线性表是否为空 virtual void print_SqList()=0;//显示表中的元素 virtual void inver()=0;//表的逆置 virtual void sort()=0;//表的排序 virtual ~List(){};//释放动态空间 };
2023-12-26 08:02:23 5KB 线性表(c++)
1
第0章 Java程序设计基础 1 【习0.1】 实验0.1 哥德巴赫猜想。 1 【习0.2】 实验0.2 杨辉三角形。 1 【习0.3】 实验0.3 金额的中文大写形式。 1 【习0.4】 实验0.4 下标和相等的数字方阵。 1 【习0.5】 实验0.5 找出一个二维数组的鞍点 2 【习0.6】 实验0.6 复数类。 2 【习0.7】 实验0.8 图形接口与实现图形接口的类 2 第1章 绪论 3 【习1.1】 实验1.1 判断数组元素是否已按升序排序。 3 【习1.2】 实验1.3 用递归算法求两个整数的最大公因数。 3 第2章 线性表 5 【习2.1】 习2-5 图2.19的数据结构声明。 5 【习2.2】 习2-6 如果在遍历单链表时,将p=p.next语句写成p.next=p,结果会怎样? 5 【习2.3】 实验2.2 由指定数组中的多个对象构造单链表。 5 【习2.4】 实验2.2 单链表的查找、包含、删除操作详见8.2.1。 5 【习2.5】 实验2.2 单链表的替换操作。 6 【习2.6】 实验2.2 首尾相接地连接两条单链表。 6 【习2.7】 实验2.2 复制单链表。 6 【习2.8】 实验2.2 单链表构造、复制、比较等操作的递归方法。 7 【习2.9】 建立按升序排序的单链表(不带头结点)。 8 【习2.10】 实验2.6 带头结点的循环双链表类,实现线性表接口。 10 【习2.11】 实验2.5 建立按升序排序的循环双链表。 14 第3章 栈和队列 17 【习3.1】 习3-5 栈和队列有何异同? 17 【习3.2】 能否将栈声明为继承线性表,入栈方法是add(0,e),出栈方法是remove(0)?为什么? 17 【习3.3】 能否用一个线性表作为栈的成员变量,入栈方法是add(0,e),出栈方法是remove(0)?为什么? 17 【习3.4】 能否将队列声明为继承线性表,入队方法是add(e),出队方法是remove(0)?为什么? 17 第4章 串 18 【习4.1】 实验4.6 找出两个字符串中所有共同的字符。 18 【习4.2】 习4-9(1) 已知目标串为"abbaba"、模式串为"aba",画出其KMP算法的匹配过程,并给出比较次数。 18 【习4.3】 习4-9(2) 已知target="ababaab"、pattern="aab",求模式串的next数组,画出其KMP算法的匹配过程,并给出比较次数。 18 第5章 数组和广义表 20 【习5.1】 求一个矩阵的转置矩阵。 20 第6章 树和二叉树 21 【习6.1】 画出3个结点的各种形态的树和二叉树。 21 【习6.2】 找出分别满足下面条件的所有二叉树。 21 【习6.3】 输出叶子结点。 21 【习6.4】 求一棵二叉树的叶子结点个数。 22 【习6.5】 判断两棵二叉树是否相等。 22 【习6.6】 复制一棵二叉树。 23 【习6.7】 二叉树的替换操作。 23 【习6.8】 后根次序遍历中序线索二叉树。 24 第7章 图 25 第8章 查找 26 【习8.1】 实验8.1 顺序表的查找、删除、替换、比较操作。 26 【习8.2】 实验8.2 单链表的全部替换操作。 28 【习8.3】 实验8.2 单链表的全部删除操作。 28 【习8.4】 折半查找的递归算法。 29 【习8.5】 二叉排序树查找的递归算法。 29 【习8.6】 二叉排序树插入结点的非递归算法。 30 【习8.7】 判断一棵二叉树是否为二叉排序树。 31 第9章 排序 32 【习9.1】 判断一个数据序列是否为最小堆序列。 32 【习9.2】 归并两条排序的单链表。 32 【习9.3】 说明二叉排序树与堆的差别。 34
1
Visual studio 2019 数据结构与算法 线性表实验代码.zip 设计一算法,实现两个非递减的线性表的合并,采用链式存储结构,能够输出合并前和合并后链表的内容。
2023-10-09 17:26:30 13.07MB 算法 链表
1
主要为大家详细介绍了python数据结构之线性表的顺序存储结构,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
2023-04-06 15:22:03 43KB python 线性表
1
与严蔚敏教材内容基本一致,但使用的是纯C语言,代码组织更清晰。
2023-03-20 13:48:19 166KB 线性表 C 数据结构
1
包括插入、删除、替换、统计长度、查找运算。
2023-03-18 09:34:17 2KB 线性表
1
实验一:线性表的基本操作 的实验报告 实验目的: 实验内容 源代码: 测试结果: 总结:
2023-03-07 20:57:50 68KB 线性表的基本操作
1
1. 可扩展性,线性表的初始尺寸为10,尺寸可扩展(设计一个线性表扩展函数,在保留原有数据的情况下,扩展线性表尺寸) 2. 插入数据,插入点后的数据后移; 3. 删除数据,删除点后的数据前移;
2023-03-02 16:28:42 2.84MB 顺序线性表
1
王道数据结构——线性表中顺序表的一些综合应用题 王道操作系统------PV操作综合大题总结 编译通过
2023-01-02 19:14:23 244KB 考研 王道数据结构操作系统
1