- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
线性表的基本操作实现及其应用
一、试验目的
1、纯熟掌握线性表的基本操作在两种存储构造上的实现。
2、会用线性链表处理简朴的实际问题。
二、试验内容
题目一、该程序的功能是实现单链表的定义和操作。该程序包括单链表构造类型以及对单链表操作的详细的函数定义和主函数。其中,程序中的单链表(带头结点)结点为构造类型,结点值为整型。单链表操作的选择以菜单形式出现,如下所示:
please input the operation:
1.初始化 2.清空 3.求链表长度 4.检查链表与否为空
5.检查链表与否为满 6.遍历链表(设为输出元素)7.从链表中查找元素
8.从链表中查找与给定元素值相似的元素在表中的位置
9.向链表中插入元素 10. 从链表中删除元素
其他键退出。。。。。
其中黑体部分必做
三、试验环节
㈠、数据构造与关键算法的设计描述
1、单链表的结点类型定义
/* 定义DataType为int类型 */
typedef int DataType;
/* 单链表的结点类型 */
typedef struct LNode
{ DataType data;
struct LNode *next;
}LNode,*LinkedList;
2、初始化单链表
LinkedList LinkedListInit()
{ }
3、 遍历单链表
void LinkedListTraverse(LinkedList L)
{ }
4、 求单链表的长度
int LinkedListLength(LinkedList L)
{ }
5、 从单链表表中查找元素
LinkedList LinkedListGet(LinkedList L,int i)
{ //L是带头结点的链表的头指针, 返回第 i 个元素 }
6、从单链表表中查找与给定元素值相似的元素在链表中的位置
LinkedList LinkedListLocate(LinkedList L, DataType x)
{ }
7、 向单链表中插入元素
void LinkedListInsert(LinkedList L,int i,DataType x)
{ // L 为带头结点的单链表的头指针,本算法
// 在链表中第i 个结点之前插入新的元素 x
}
8、 从单链表中删除元素
void LinkedListDel(LinkedList L,DataType x)
{ 删除以 L 为头指针的单链表中第 i 个结点 }
9、 用尾插法建立单链表
LinkedList LinkedListCreat( )
㈡、函数调用及主函数设计
主函数求单链表的长度
主函数
求单链表的长度
LinkedListLength(LinkedList L){ }
从单链表表中查找元素LinkedList LinkedListGet(LinkedList L,int i)
向单链表中插入元素
LinkedListInsert(LinkedList L,int i,DataType x)
从单链表中删除元素LinkedListDel(LinkedList L,DataType x)
用尾插法建立单链表
LinkedList LinkedListCreat( )
试验数据
运行时出现:
然后选择下列操作:选择8,用尾插法建立链表
选则操作2,求链表的长度
然后选择操作3,遍历链表
然后选择操作4,从链表中查找元素
然后选择操作5,从链表中查找与给定元素值相似的元素在表中的位置
然后选择个操作6,向链表中插入元素,之后再遍历链表
然后选择操作7 从链表中删除元素之后再遍历链表
㈣试验总结
通过这次线性表的基本操作实现及其应用试验的学习,我学会了链表的许多基本操作,懂得怎样用C语言去编程序,懂得了许多链表方面的知识,也认识到了自己的局限性,需要在此后的学习中愈加努力,学好接下来的课程。
四、重要算法流程图及程序清单
1、重要算法流程图:
主函数
主函数
开始界面
求链表长度
遍历链表
查找节点
插入元素
删除元素
建立链表
输出数据
结束
2、程序清单
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#include<iostream.h>
#define MAX_SIZE 100//链表的最大长度
typedef int DataType;
typedef struct LNode
{
DataType data;
struct LNode *nex
文档评论(0)