数据结构实验报告

时间:2025-04-17

线性表、链表、链栈、循环队列实验报告(含程序代码及截图)

数据结构实验报告

姓名: 学号: 专业: 班 级: 指导教师: 实验时间: 实验地点:

(实验题目)

1. 实验内容和要求

实验一 顺序表实验

实验要求 1、顺序表结构定义,算法的实现以库文件方式实现,库文件名统一为seqList.h; 2、实验程序有较好可读性,各运算和变量的命名直观易懂,符合软件工程要求; 3、程序有适当的注释。 实验任务

编写算法实现下列问题的求解。

<1>求顺序表中第i个元素(函数),若不存在,报错。 实验测试数据基本要求:

第一组数据:顺序表长度n≥10,i分别为5,n,0,n+1,n+2 第二组数据:顺序表长度n=0,i分别为0,2

<2>在第i个结点前插入值为x的结点。 实验测试数据基本要求:

第一组数据:顺序表长度n≥10,x=100, i分别为5,n,n+1,0,1,n+2 第二组数据:顺序表长度n=0,x=100,i=5

<3>删除顺序表中第i个元素结点。 实验测试数据基本要求:

第一组数据:顺序表长度n≥10,i分别为5,n,1,n+1,0 第二组数据:顺序表长度n=0, i=5

<4>在一个递增有序的顺序表L中插入一个值为x的元素,并保持其递增有序特性。

实验测试数据基本要求:

顺序表元素为 (10,20,30,40,50,60,70,80,90,100), x分别为25,85,110和8

<5>将顺序表L中的奇数项和偶数项结点分解开(元素值为奇数、偶数),分别放入新的顺序表中,然后原表和新表元素同时输出到屏幕上,以便对照求解结果。 实验测试数据基本要求:

第一组数据:顺序表元素为 (1,2,3,4,5,6,7,8,9,10,20,30,40,50,60) 第二组数据:顺序表元素为 (10,20,30,40,50,60,70,80,90,100)

线性表、链表、链栈、循环队列实验报告(含程序代码及截图)

<6>求两个递增有序顺序表L1和L2中的公共元素,放入新的顺序表L3中。 实验测试数据基本要求: 第一组

第一个顺序表元素为 (1,3,6,10,15,16,17,18,19,20)

第二个顺序表元素为 (1,2,3,4,5,6,7,8,9,10,18,20,30) 第二组

第一个顺序表元素为 (1,3,6,10,15,16,17,18,19,20) 第二个顺序表元素为 (2,4,5,7,8,9,12,22) 第三组

第一个顺序表元素为 ()

第二个顺序表元素为 (1,2,3,4,5,6,7,8,9,10)

实验二 单链表实验

实验要求

1、本次实验中的链表结构均为带头结点的单链表; 2、链表结构定义,算法实现放入库文件“linkList.h”; 3、运算和变量命名直观易懂,并有相应的注释。 实验任务

编写算法实现下列问题的求解。

<1>求链表中第i个结点的指针(函数),若不存在,则返回NULL。 实验测试数据基本要求:

第一组数据:链表长度n≥10,i分别为5,n,0,n+1,n+2 第二组数据:链表长度n=0,i分别为0,2

<2>在第i个结点前插入值为x的结点。 实验测试数据基本要求:

第一组数据:链表长度n≥10,x=100, i分别为5,n,n+1,0,1,n+2 第二组数据:链表长度n=0,x=100,i=5

<3>删除链表中第i个元素结点。 实验测试数据基本要求:

第一组数据:链表长度n≥10,i分别为5,n,1,n+1,0 第二组数据:链表长度n=0, i=5

<4>在一个递增有序的链表L中插入一个值为x的元素,并保持其递增有序特性。 实验测试数据基本要求:

链表元素为 (10,20,30,40,50,60,70,80,90,100), x分别为25,85,110和8

<5>将单链表L中的奇数项和偶数项结点分解开(元素值为奇数、偶数),申请2

线性表、链表、链栈、循环队列实验报告(含程序代码及截图)

个头结点,把分开的奇数项和偶数项分别链接到这2个头结点上,然后再将这两个新链表同时输出在屏幕上,并保留原链表的显示结果,以便对照求解结果。 实验测试数据基本要求:

第一组数据:链表元素为 (1,2,3,4,5,6,7,8,9,10,20,30,40,50,60) 第二组数据:链表元素为 (10,20,30,40,50,60,70,80,90,100)

<6>求两个递增有序链表L1和L2中的公共元素,并以同样方式连接成链表L3。 实验测试数据基本要求: 第一组

第一个链表元素为 (1,3,6,10,15,16,17,18,19,20)

第二个链表元素为 (1,2,3,4,5,6,7,8,9,10,18,20,30) 第二组

第一个链表元素为 (1,3,6,10,15,16,17,18,19,20) 第二个链表元素为 (2,4,5,7,8,9,12,22) 第三组

第一个链表元素为 ()

第二个链表元素为 (1,2,3,4,5,6,7,8,9,10)

实验三 链栈实验

实验要求

1、本次实验中,链栈使用带头结点的单链表实现。

2、链栈结构定义,算法实现全部放入库函数“linkStack.h”中; 3、各运算和变量命名直观易懂,并有相应的注释。 实验任务

编写算法实现下列问题的求解。 <1>初始化一个链栈。 <2>判断是否空栈。 <3>入栈

第一组数据:10,13,5,8,20,55 第二组数据:a, b, c, d, e, f, g <4>取栈顶元素 <5>出栈

<6>将10进制数转换为16进制数 第一组数据:4 第二组数据:11 第三组数据:254 第四组数据:1357

实验四 循环队列实验

实验要求

1、本次实验中,队列使用顺序结 …… 此处隐藏:7450字,全部文档内容请下载后查看。喜欢就下载吧 ……

数据结构实验报告.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219