双链表的操作Word格式.docx
《双链表的操作Word格式.docx》由会员分享,可在线阅读,更多相关《双链表的操作Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
1111
完成日期:
2012-01
目录
1课程设计的目的3
2课程设计的基本要求3
2.1课程设计的题目3
2.2课程设计的题目要求3
3详细设计3
3.1存储结构3
3.2算法流程图4
4运行结果7
5课程设计总结12
6参考书目13
1课程设计的目的
1.掌握双向链表的建立。
2.掌握双向链表的基本操作。
2课程设计的基本要求
2.1课程设计的题目
双链表的操作
2.2课程设计的题目要求
1.建立双向链表L,含n个结点且按整数值递增排列的(输入任意);
2.删除双向链表中多余的值相同的元素
3.求出的长度
4.将双向链表就地逆置
5.向双向链表中插入值,插入后双向链表仍有序
3详细设计
3.1存储结构
本系统用双链表作为基本的存储结构,并有一下的结构体:
typedefstructduNode
{
intdata;
structduNode*prior;
structduNode*next;
}duNode;
typedefduNode*duLinklist;
//指针类型,故访问它的成员用"
->
"
。
3.2算法流程图
主函数流程图
创建双链表函数流程图
求长度函数流程图
插入函数流程图
删除相同数据函数流程图
按位置删除函数流程图(扩展功能)
逆置函数流程图
4运行结果
主界面
创建链表函数
创建链表函数的错误数据处理
求长度函数
插入函数
插入函数的错误数据处理
删除相同元素函数(有相同元素时)
删除相同函数(无相同元素时)
按位置删除函数
逆置函数
显示函数
5课程设计总结
这次数据结构的课程设计我做的题目是双向链表的操作,一开始觉得比较简单,结果做了之后才发现并不是这样的。
考虑如何实现基本的功能这是最基本的,但不是所有的功能都是简单的,例如在做双向链表的逆置时我就遇到了不少麻烦,最后经过上网查资料,和同学讨论,才做了出来。
在正确数据的输入下要输出正确的结果,还要考虑输入错误数据时,系统具有一定的判错的能力。
错误数据随时都能输错,那就要考虑各种可能的情况,并且在不同的情况下,还要做出不同的处理,这就需要设计出不同的算法。
在这个过程中,锻炼了我全面考虑问题,细心思考的能力。
还加深了我对C++的理解,对数据结构的理解,更好的掌握了所学的有关知识。
这次课程设计花了我不少的时间,但是我觉得很值得,因为我真的锻炼了自己,在学习中体验到了快乐,觉得编程是一种特别的快乐,只有真正付出的人才会体验到的快乐。
总之,这次的课程设计让我受益匪浅。
6参考书目
1)谭浩强《C++程序设计》清华大学出版社。
2)严蔚敏《数据结构(C语言版)》人民邮电出版社
3)夏克俭《数据结构十算法》国防工业出版社
4)孙永强,张然译《数据结构与程序设计技术》科学出版社
5)严蔚敏,陈文博《数据结构及应用算法教程》清华大学出版社