作业
alicia6137
这个作者很懒,什么都没留下…
展开
-
第10周项目1(2)-二叉树构造算法的验证
1.由先序序列和中序序列构造二叉树定理:任何n(n≥0)个不同节点的二叉树,都可由它的中序序列和先序序列唯一地确定。证明(数学归纳法) 基础:当n=0时,二叉树为空,结论正确。假设:设节点数小于n的任何二叉树,都可以由其先序序列和中序序列唯一地确定。归纳:已知某棵二叉树具有n(n>0)个不同节点,其先序序列是a0a1…an−1;中序序列是b0b1…bk−1bkbk+1…bn−1。先序遍历原创 2017-11-08 10:42:47 · 216 阅读 · 0 评论 -
第12周项目2-Kruskal算法的验证
以下图为例验证算法 main.cpp#include <stdio.h>#include <malloc.h>#include "graph.h"#define MaxSize 100typedef struct{ int u; //边的起始顶点 int v; //边的终止顶点 int w; //边的权值} Edge;void In原创 2017-11-16 11:13:00 · 188 阅读 · 0 评论 -
第13周项目1(1) - 验证折半查找算法
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem13-1.cpp *作 者:于子淇 *完成日期:2017年11月23日 *版 本 号:Code::Blocks 12.11 *问题描述:认真阅读并验证折半查找算法。请用有序表 {12,18,24,35,47,50,62,83,90,11原创 2017-11-23 10:43:49 · 245 阅读 · 0 评论 -
第13周项目1(2)-验证分块查找算法
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem13-1.cpp *作 者:于子淇 *完成日期:2017年11月23日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */ 认真阅读并验证分块查找算法。请用22原创 2017-11-23 11:24:24 · 270 阅读 · 0 评论 -
第14周项目1 - 验证算法
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem14-1.cpp *作 者:于子淇 *完成日期:2017年12月5日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */ 认真阅读并验证哈希表实施查找的相关算法,原创 2017-12-05 17:48:17 · 260 阅读 · 1 评论 -
第14周项目2 - 用哈希法组织关键字
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem14-2.cpp *作 者:于子淇 *完成日期:2017年12月5日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */ 已知一个关键字序列为if、while、f原创 2017-12-05 18:02:09 · 207 阅读 · 0 评论 -
第14周项目3 - B-树的基本操作
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem14-3.cpp *作 者:于子淇 *完成日期:2017年12月5日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */ 实现B-树的基本操作。基于序列{4,原创 2017-12-05 18:08:41 · 205 阅读 · 0 评论 -
第15周项目1(6)- 验证归并排序算法
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem15-1(6).cpp *作 者:于子淇 *完成日期:2017年12月14日 *版 本 号:Code::Blocks 12.11 *问题描述:验证归并算法 *输入描述:无 *程序输出:见程序运行结果演示 */#include <stdio.原创 2017-12-14 11:08:42 · 308 阅读 · 0 评论 -
第15周项目1(7)- 验证基数排序算法
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem15-1(6).cpp *作 者:于子淇 *完成日期:2017年12月14日 *版 本 号:Code::Blocks 12.11 *问题描述:验证基数排序算法 *输入描述:无 *程序输出:见程序运行结果演示 */#include <stdi原创 2017-12-14 11:14:08 · 231 阅读 · 0 评论 -
第15周项目2 - 大数据集上排序算法性能的体验
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem15-2.cpp *作 者:于子淇 *完成日期:2017年12月14日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */ 设计一个函数,产生一个至少5万条记录的原创 2017-12-14 11:26:21 · 232 阅读 · 0 评论 -
第15周项目1 (1)- 验证直接插入排序算法
1.直接插入排序#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据原创 2017-12-07 11:01:45 · 364 阅读 · 0 评论 -
第15周项目1(2)- 验证希尔排序算法
1.希尔排序#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,原创 2017-12-07 11:08:02 · 226 阅读 · 0 评论 -
第15周项目1(3)-验证冒泡排序算法
1.冒泡排序#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,原创 2017-12-07 11:15:32 · 217 阅读 · 0 评论 -
第15周项目1(4)- 验证快速排序算法
1.以第1个元素作为基准#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //原创 2017-12-07 11:19:26 · 242 阅读 · 0 评论 -
第15周项目1(5)- 验证堆排序算法
#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,类型为Inf原创 2017-12-07 11:23:22 · 195 阅读 · 0 评论 -
第15周项目3 - 归并排序算法的改进
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem15-3.cpp *作 者:于子淇 *完成日期:2017年12月18日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */ 采用归并排序、快速排序等高效算法进行排原创 2017-12-18 08:44:53 · 234 阅读 · 0 评论 -
第12周项目5-拓扑排序算法验证
下面算法的验证以下图为例 /* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem12-5.cpp *作 者:于子淇 *完成日期:2017年11月16日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */main.cp原创 2017-11-16 11:26:21 · 214 阅读 · 0 评论 -
第12周项目4-Floyd算法验证
下面算法的验证以下图为例 /* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem12-4.cpp *作 者:于子淇 *完成日期:2017年11月16日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */main.c原创 2017-11-16 11:21:58 · 218 阅读 · 0 评论 -
第10周项目1(3)-中序线索化二叉树的算法验证
#include <stdio.h>#include <malloc.h>#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; int ltag,rtag; //增加的线索标记 struct node *lchild; struct node *rch原创 2017-11-08 10:52:56 · 204 阅读 · 0 评论 -
第10周项目1(4)-哈夫曼编码的算法验证
#include <stdio.h>#include <string.h>#define N 50 //叶子结点数#define M 2*N-1 //树中结点总数//哈夫曼树的节点结构类型typedef struct{ char data; //结点值 double weight; //权重 int parent; //双亲结点原创 2017-11-08 10:56:28 · 269 阅读 · 0 评论 -
第10周项目2 - 用二叉树求解代数表达式
用二叉树来表示代数表达式,树的每一个分支节点代表一个运算符,每一个叶子节点代表一个运算数(为简化,只支持二目运算的+、-、*、/,不加括号,运算数也只是一位的数字字符。本项目只考虑输入合乎以上规则的情况)。请设计算法,(1)根据形如“1+2∗3−4/5”的字符串代表的表达式,构造出对应的二叉树(如图),用后序遍历的思路计算表达式的值时,能体现出先乘除后加减的规则;(2)对构造出的二叉树,计算出表达式原创 2017-11-08 11:05:01 · 349 阅读 · 0 评论 -
第11周项目1 - 图基本算法库
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem11-1.cpp *作 者:于子淇 *完成日期:2017年11月9日 *版 本 号:Code::Blocks 12.11 *问题描述:定义图的邻接矩阵和邻接表存储结构,实现其基本运算,并完成测试 *输入描述:无 *程序输出:见程序运行结果演示原创 2017-11-09 10:56:37 · 203 阅读 · 0 评论 -
第11周项目2 - 操作用邻接表存储的图
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem11-2.cpp *作 者:于子淇 *完成日期:2017年11月9日 *版 本 号:Code::Blocks 12.11 *问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法: (1)输出出图G中每个顶点的出度; (2)求出原创 2017-11-09 11:20:03 · 214 阅读 · 0 评论 -
第10周项目1(1) - 层次遍历算法的验证
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem10-1.cpp *作 者:于子淇 *完成日期:2017年11月2日 *版 本 号:Code::Blocks 12.11 *问题描述:运行并重复视频中所讲过的算法。 (1)层次遍历算法的验证 (2)二叉树构原创 2017-11-02 10:59:55 · 244 阅读 · 0 评论 -
第11周项目3 - 图遍历算法实现
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem11-3.cpp *作 者:于子淇 *完成日期:2017年11月9日 *版 本 号:Code::Blocks 12.11 *问题描述:实现图遍历算法,分别输出如下图结构的深度优先(DFS)遍历序列和广度优先遍历(BFS)序列。 *输入描述:无原创 2017-11-13 20:33:43 · 166 阅读 · 0 评论 -
第11周项目4 - 利用遍历思想求解图问题
假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 (1)设计一个算法,判断顶点u到v是否有简单路径 (2)设计一个算法输出图G中从顶点u到v的一条简单路径(设计测试图时,保证图G中从顶点u到v至少有一条简单路径)。 (3)输出从顶点u到v的所有简单路径。 (4)输出图G中从原创 2017-11-13 21:18:38 · 193 阅读 · 0 评论 -
第13周项目1(3)-验证二叉排序树相关算法
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem13-1.cpp *作 者:于子淇 *完成日期:2017年11月29日 *版 本 号:Code::Blocks 12.11 *问题描述: (1)由整数序列{43,52,75,24,10,38,67,55,63,60}构造二叉排序树; (2)原创 2017-11-29 10:13:29 · 192 阅读 · 0 评论 -
第13周项目1(4)-验证平衡二叉树相关算法
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem13-1.cpp *作 者:于子淇 *完成日期:2017年11月29日 *版 本 号:Code::Blocks 12.11 *问题描述: (1)由整数序列{43,52,75,24,10,38,67,55,63,60}构造AVL树; (2)输原创 2017-11-29 10:33:00 · 285 阅读 · 0 评论 -
第13周项目2-二叉树排序树中查找的路径
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem13-1.cpp *作 者:于子淇 *完成日期:2017年11月29日 *版 本 号:Code::Blocks 12.11 *问题描述:设计一个算法,输出在二叉排序中查找时查找某个关键字经过的路径。 *输入描述:无 *程序输出:见程序运行结原创 2017-11-29 10:37:21 · 175 阅读 · 0 评论 -
第13周项目3-是否是二叉排序树?
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem13-1.cpp *作 者:于子淇 *完成日期:2017年11月29日 *版 本 号:Code::Blocks 12.11 *问题描述:设计一个算法,判断给定的二叉树是否是二叉排序树。 *输入描述:无 *程序输出:见程序运行结果演示 */m原创 2017-11-29 10:41:11 · 213 阅读 · 0 评论 -
第11周项目5 - 迷宫问题之图深度优先遍历解法
设计一个程序,采用深度优先遍历算法的思路,解决迷宫问题。 (1)建立迷宫对应的图数据结构,并建立其邻接表表示。 (2)采用深度优先遍历的思路设计算法,输出从入口(1,1)点到出口(M,N)的所有迷宫路径。 提示:将迷宫中的每一格作为一个顶点,相邻格子可以到达,则对应的顶点之间存在边相连 /* *Copyright (c) 2017, 烟台大原创 2017-11-13 21:45:28 · 316 阅读 · 0 评论 -
第12周项目1-Prim算法的验证
以下图为例验证Prim算法 /* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem12-1.cpp *作 者:于子淇 *完成日期:2017年11月16日 *版 本 号:Code::Blocks 12.11 *问题描述:见引用 *输入描述:无 *程序输出:见程序运行结果演示 */graph.原创 2017-11-16 10:57:42 · 165 阅读 · 0 评论 -
第12周项目3-Dijkstra算法的验证
下面算法验证以下图为例 main.cpp#include <stdio.h>#include <malloc.h>#include "graph.h"#define MaxSize 100void Ppath(int path[],int i,int v) //前向递归查找路径上的顶点{ int k; k=path[i]; if (k==v) return原创 2017-11-16 11:16:43 · 180 阅读 · 0 评论 -
第15周项目4 - 英文单词的基数排序
/* *Copyright (c) 2017, 烟台大学计算机学院 *All rights reserved. *文件名称:DSitem15-4.cpp *作 者:于子淇 *完成日期:2017年12月18日 *版 本 号:Code::Blocks 12.11 *问题描述:设计一个基数排序的算法,将一组英文单词,按字典顺序排列。假设单词均由小写字母或空格构成,最长的单词有MaxLe原创 2017-12-18 08:51:03 · 291 阅读 · 0 评论