实验一 线性表及其应用

更新时间:2024-05-06 10:29:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

天津城建大学

计算机与信息工程学院

实 验 报 告

课程名称: 计算机技术基础 实验名称: 实验类型: 验证性□ 综合性□ 设计性□ 实验室名称:计算机实验教学中心xx机房 班级学号:

学生姓名: 任课教师:

成 绩: 实验日期: 2013-10-08(周二)第二节

实验一 顺序表操作与单链表操作

——线性表及其应用

一、实验目的

1、 掌握用C语言上机调试线性表的基本方法;

2、 掌握线性表的基本操作,如插入、删除、查找、线性表合并等运算在顺序存储结构和链式存储结构上的运算;并能够运用线性表基本操作解决问题,实现相应算法。 二、实验设备、软件环境 计算机,VS2005,vc++6.0 三、实验内容

1. 单链表基本操作练习(验证型实验)

1)问题描述:在主程序中设计一个简单的菜单,分别调用相应的函数功能:

1…建立链表 2…连接链表 3…输出链表 0…结束

2)实验要求:在程序中定义下述函数,并实现所要求的函数功能: CreateLinklist( ): 从键盘输入数据,创建一个单链表 ContLinklist( ):将前面建立的两个单链表首尾相连 OutputLinklist( ):输出显示单链表 3)实验提示:

★单链表数据类型定义(C语言) # include

typedef int ElemType; //元素类型 typedef struct LNode { ElemType data; struct LNode *next; } LNode,*LinkList;

★为了算法实现简单,最好采用带头结点的单向链表。

2.设有一个线性表E={e1, e2,… , en-1, en},设计一个算法,将线性表逆置,即使元素排列次序颠倒过来,成为逆线性表E’={ en , en-1 , … , e2 , e1},要求逆线性表占用原线性表空间,并且用顺序表和单链表两种方法表示,分别用两个程序来完成。(设计型实验) 3.已知由不具有头结点的单链表表示的线性表中,含有三类字符的数据元素(字母、数字和其他字符),试编写算法构造三个以循环链表表示的线性表,使每个表中只含有同一类的字符,且利用原表中的结点空间,头结点可另辟空间。(设计型实验) 四、注意问题

★重点理解链式存储的特点及指针的含义。 ★注意比较顺序存储与链式存储的各自特点。

★注意比较带头结点、无头结点链表实现算法时的区别。 ★单链表的操作是数据结构的基础,要注意对其常见算法的掌握。 五、实验过程与实验结果

1、算法设计思路简介 2、核心算法设计描述

3、算法的实现和测试结果与分析

(实验过程中需要记录部分程序的运行情况,可以截图)

本文来源:https://www.bwwdw.com/article/ugvg.html

Top