单链表的 基本操作[表格借鉴].doc
《单链表的 基本操作[表格借鉴].doc》由会员分享,可在线阅读,更多相关《单链表的 基本操作[表格借鉴].doc(6页珍藏版)》请在三一文库上搜索。
1、单向链表单向链表的基本操作,创建一个由6个节点组成的单向链表,显示链表中每个节点的数据,并且做增加、删除、查找节点以及计算单链表的长度等处理。 需求分析:1.功能 (1)用尾插法创建一带头结点的由6个节点组成的单向链表:从键盘读入一组整数,作为单链表中的元素,输入完第6个结点后结束;将创建好的单链表元素依次输出到屏幕上。 (2)显示链表中每个节点的数据 (3)从键盘输入一个数,查找在以上创建的单链表中是否存在该数;如果存在,显示它的位置,即第几个元素;如果不存在,给出相应提示如“No found node!”。 (4)在上述的单链表中的指定位置插入指定数据,并输出单链表中所有数据。(5)删除上
2、述单链表中指定位置的结点,并输出单链表中所有数据。(6)求单链表的长度并输出。2输入要求先输入单链表中结点个数n,再输入单链表中所有数据,在单链表中需查找的数据,需插入的数据元素的位置、值,要删除的数据元素的位置。3. 测试数据单链表中所有数据:12,23,56,21,8,10在单链表中需查找的数据:56;24插入的数据元素的位置、值:1,28;7,28;0,28 要删除的数据元素的位置:6 概要设计:1. 算法思想:由于在操作过程中要进行插入、删除等操作,为运算方便,选用带头结点的单链表作数据元素的存储结构。对每个数据元素,由一个数据域和一个指针域组成,数据域放输入的数据值,指针域指向下一个
3、结点。2. 数据结构: 单链表结点类型: typedef struct Liistnode int data;struct Listnode *next; NODE;3. 模块划分:a) 用尾插法建立带头结点的单链表*CreateList函数;b) 显示链表中每个结点的数据PrintList函数;c) 从键盘输入一个数,查找单链表中是否存在该数FoundList函数;d) 在单链表中指定位置插入指定数据并输出单链表中所有数据InsertList函数;e) 删除单链表中指定位置的结点并输出单链表中所有数据DeleteList函数;f) 计算单链表的长度并在屏幕上输出LengthList函数;g)
4、 主函数main(),功能是给出测试数据值,建立测试数据值的带头结点的单链表,调用PrintList函数、FoundList函数、InsertList函数、DeleteList函数、LengthList函数实现问题要求。四、实验要求1 用C完成算法设计和程序设计并上机调试通过。2 撰写实验报告,提供实验结果和数据。五、源程序清单表格详d实验代码:#include#include#include#define ERROR 0;typedef struct LNode int data; struct LNode *next;LNode,*LinkList;LinkList InitList(Li
5、nkList L) LinkList node = NULL; node = (LinkList)malloc(sizeof(LNode); if(!node) return ERROR; node-next = NULL; L = node; return L;int ListLength(LinkList L) LinkList p = NULL; int count = 0; p = L; while(p-next) count+; p = p-next; return count;LinkList CreateList_L(LinkList L,int n) int i; LinkLi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 表格借鉴 单链表的 基本操作表格借鉴 单链表 基本 操作 表格 借鉴
链接地址:https://www.31doc.com/p-10859078.html