数据结构与算法实训报告

本文由用户“xiaochaochao1”分享发布 更新时间:2021-06-05 15:28:59 举报文档

以下为《数据结构与算法实训报告》的无排版文字预览,完整格式请下载

下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。

学生实训报告

课程名称

数据结构与算法

班级

软件四班



姓名

赵某某

学号

B***411

指导老师

刘某某



实训评分 □优 □良 □中 □及格 □不及格



一、实训名称

线性表的基本操作



二、实训目的

1.掌握线性表的基本概念

2.掌握线性表的存储结构(顺序存储与链式存储)

3.掌握线性表的基本操作



三、实训要求

1.线性表可以顺序表也可以用单链表实现,鼓励大家用两种方式实现。

2.创建线性表时,数据从键盘输入整形数据

3.线性表类型定义和或各种操作的实现,可以用教材给出的方法,也可以自己设计。

4.使用上述线性表的操作实现归并、头插法建表等算法。



四、实训内容

(需给出完整的分析、设计与实现过程,以及实现的代码)

#include

using namespace std;

#include

#include

#define TURE 1

#define FALSE 0

#define OK 1

#define ERROR 0

#define IINFEASIBLE -1

#define OVERFLOW -2

#define LIST_INIT_SIZE 10

#define LISTINCREAMENT 2

typedef int ElemType;

typedef int Status;

typedef struct LNode{

ElemType data;

struct LNode *next;

}LNode,*LinkList;

void CreateList_L(LinkList &L,int n)

{

int i;

LinkList p;

L=(LinkList)malloc(sizeof(LNode));

L->next = NULL;

for(i=n;i>0;--i)

{

p=(LinkList)malloc(sizeof(LNode));

scanf("%d",&p->data);

p->next=L->next;

L->next=p;

}

}

void PrintList_L(LinkList L)

{

LinkList p=L->next;

while(p)

{

printf("%d",p->data);

p=p->next;

}

printf("\n");

}

Status GetElem_L(LinkList L,int i,ElemType &e)

{

LinkList p;

p=L->next;

int j=1;

while(p&&jnext;

++j;

}

if(!p||j>i)

return ERROR;

e=p->data;

return OK;

}

Status LinkInsert_L(LinkList &L,int i,ElemType e)

{

LinkList p;

LinkList s;

p=L;

int j=0;

while(p&&j

以上为《数据结构与算法实训报告》的无排版文字预览,完整格式请下载

下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。

图片预览