数据结构实验三——双链表的操作初始化插入输出重点.doc

数据结构实验三——双链表的操作初始化插入输出重点.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构 实验报告 题目:双链表的操作理解双链表的基本操作 了解双链表的建立和输出 掌握双链表的插入、删除等实现方法 编写一个程序,实现双链表的各种基本运算(假设双链表的元素类型为char),并在此基础上设计一个程序,完成如下功能: (1)初始化双链表h; (2)采用尾插法依次插入元素a,b,c,d,e; (3)输出双链表h; (4)输出双链表h长度; (5)判断双链表h是否为空; (6)输出双链表h的第3个元素; (7)输出元素a的位置; (8)在第4个位置上插入元素f; (9)输出双链表h; (10)删除h的第3个元素; (11)输出双链表h; (12)释放双链表h。#includestdio.h #includestdlib.h typedef char datatype; typedef struct node { datatype data; struct node *prior; struct node *next; }linklist; void insert(linklist *L, datatype e) //采用尾插法插入元素 { linklist *p,*q; p=L; while(p-next!=NULL) p=p-next; q=(linklist *)malloc(sizeof(linklist)); q-data=e; q-prior=p; p-next=q; q-next=NULL; } void disp(linklist *L) //输出链表数据 { linklist *p; p=L-next; while(p!=NULL) { printf(%c ,p-data); p=p-next; } printf(\n); } void length(linklist *L) //输出链表长度 { linklist *p; p=L; int i=0; while(p-next!=NULL) { i++; p=p-next; } printf(the length of the list is: %d\n,i); } void empty(linklist *L) //判断双链表是否为空 { if(L==NULL) printf(empty!\n); else printf(not enmpty!\n); } int get(linklist *L,int i) //输出双链表的第i个元素; { int j=0; linklist *p; p=L; while(jip!=NULL) { j++; p=p-next; } if(p==NULL) return 0; else { printf(%c\n,p-data); return 1; } } int find(linklist *L,datatype e) //寻找值为e的节点位置 { int i=1; linklist *p; p=L-next; while(p!=NULLp-data!=e) { p=p-next; i++; } if(p==NULL) return(0); else { printf(%d\n,i); return(1); } } void insertlist(linklist *L, int i, datatype e) //在第i个位置插入元素e { linklist *p,*q; p=L; int j=0; while(jip!=NULL) { j++; p=p-next; } p=p-prior; q=(linklist*)malloc(sizeof(linklist)); q-data=e; q-next=p-next; q-prior=p; p-next=q; } int deletelist(linklist *L,int i) //删除双链表的第i个元素; { int j=0; linklist *p,*q; p=L; while(jip!=NULL) { j++; p=p-next; } if(p=

文档评论(0)

baobei + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档