- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
数据结构课程设计-----成果展示网络122-张艳升
目录一.双向循环链表二.二叉树三.有向图
2实现双向循环链表空表创建3实现双向循环链表添加节点1功能:6打印出双向循环链表5实现双向循环链表就地逆置4实现双向循环链表删除节点双向循环链表
双向循环链表方法:构造方法建立空表:DoubleCircularLinked()插入节点的方法:insert(AnyTypex)在某个位置插入节点的方法:insert(intidx,AnyTypex)删除某个位置的节点方法:remove(intidx)就地逆置的方法:transfer()6打印链表的方法:print()
思路:1建立头节点headNode和尾节点endNode的双向循环链表2从键盘上直接输入节点数和节点值添加到链表3执行插入方法可以实现某个位上的插入4通过删除方法删除某个位置上的节点5就地逆置通过改变指针指向逆向输出6双向循环链表
BDACE功能:实现二叉树的层次遍历通过建立一个哈夫曼树,实现哈夫曼算法实现二叉树的创建计算出二叉树的叶子节点数二叉树
方法:01创建二叉树的方法:createTree()层次遍历的方法:leavelOrder()计算叶子节点的方法:countLeafNode()创建哈夫曼树的方法:compareNum()计算码长的方法:print()0602030405二叉树
STEP5STEP4STEP3STEP2STEP1思路:通过从键盘上读取利用先序遍历结果创建一颗二叉树层次遍历:通过利用队列思想看访问的节点不是空时进队列,然后访问下一个节点,头一个节点出队列。通过判断访问节点左右孩子为空来计算叶子节点通过输入一数组找出该数组中最小的两个,然后相加得到的数为这两个最小数的根节点依次类推,哈弗曼编码是向右拐加1向左拐加0二叉树
功能:创建一个有向图实现有向图的深度优先遍历实现有向图的广度优先遍历实现实现有向图的增加边的功能实现有向图的删除边的功能实现有向图的连通性判断及求连通分量有向图
删除边的方法:deleteArc()广度优先遍历的方法:BFSTransfer()有向图的构造方法实现图的创建:adjDWGraph()判断图的连通性及求连通分量:isConnect()增加变得方法:addArc()方法:深度优先遍历的方法:DFSTransfer()有向图
1思路:2通过从键盘上输入来创建有向图3通过节点是否被访问过来进行深度优先遍历和广度优先遍历,广度优先遍历通过队列的思想访问过的进队列,访问下一个是头一个出来来进行每一个节点的遍历4通过深度优先遍历来进行图的连通性的判断如果该图是联通的连通分量为其本身,否则输出该图不是连通的并计算出连通分量有向图
致谢!
文档评论(0)