山东建筑大学计算机科学与技术学院课程设计说明书题目:双向链表的创建和操作的实现树的创建及相关操作的实现课程:数据结构与算法院(部):计算机学院专业:网络工程班级:网络101学生姓名:王天未学号:2010111200指导教师:伊静完成日期:2013-7-6目录课程设计任务书1................................................II课程设计任务书2...............................................III双向循环链表的创建及相关操作的实现..............................4一、问题描述.................................................4二、数据结构.................................................4三、逻辑设计.................................................5四、编码.....................................................6五、测试数据...............................................11六、测试情况................................................11树的创建及相关操作的实现.......................................15一、问题描述................................................15二、数据结构................................................15三、逻辑设计................................................16四、编码....................................................19五、测试数据...............................................26六、测试情况................................................26结论..........................................................28参考文献.......................................................29课程设计指导教师评语...........................................30山东建筑大学计算机科学与技术学院课程设计任务书1指导教师(签字):教研室主任(签字)设计题目双向循环链表的创建及相关操作的实现已知技术参数和设计要求1、建立一个空表2、插入第i个结点。3、删除第i个结点。4、插入第1个结点。5、插入最后一个结点。6、逆置设计内容与步骤1、设计存储结构2、设计算法3、编写程序,进行调试4、总结并进行演示、讲解设计工作计划与进度安排做双向链表创建方法做双向链表各种操作方法设计考核要求1、考勤20%2、课程设计说明书50%3、成果展示30%山东建筑大学计算机科学与技术学院课程设计任务书2指导教师(签字):教研室主任(签字)设计题目树的创建及相关操作的实现已知技术参数和设计要求1、利用先序遍历和层次遍历的结果建立二叉树2、实现二叉树的层次遍历3、统计二叉树叶子结点的个数(递归)。4、将二叉树左右子树相互交换(递归)设计内容与步骤1.建立结点类2.构造BinaryTree()3.建立线序遍历树4.建立层次遍历树5.实现树的层次遍历6.统计叶子结点个数7.交换左右子树8.输出树的方法设计工作计划与进度安排6月13日,实验课下完成先序遍历建树,16月14日课程设计时间完成层次遍历建树6月16日课下完成层次遍历和叶子节点个数统计6月18日课程设计时间完成二叉树左右子树相互交换6月19日完成测试函数及纠错设计考核要求1、考勤20%2、课程设计说明书50%3、成果展示30%双向循环链表的创建及相关操作的实现一、问题描述1、每个节点的next域构成了一个循环单链表2、每个节点的prev域构成了另一个循环单链表二、数据结构针对所处理的树:1、画出双向循环链表的存储结构2、使用所选用语言的功能,描述该存储结构的实现privatestaticclassNode
{AnyTypedata;Nodeprev;Nodenext;}a0a1a2a3a4prevdatanext三、逻辑设计1、总体思路对于双向循环链表,建立一个空表,然后实现双向循环链表的插入,删除操作。为了便于逆置的操作,选择建立一个带头节点的双向循环链表,插入第一个节点和插入最后一个节点,只需要在0号位置和size()位置插入节点就行。2、模块划分(以图示的方法给出各个函数的调用关系)3、函数或类的具体定义和功能classNode//节点类定义publicclassDlList//循环链表主类publicbooleanadd(intidex,AnyTypex)//链表插入操作publicAnyTyperemove(intidex...