- 博客(79)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 期末学习总结
数据结构课程已经接近尾声,现在回想起来,这一学期走过的路程还真是有趣而又艰辛,更是这样的体会,才让我获益良多。其实,在还没有正式上数据结构课的时候我就早已在141和145同学的口中知道了贺老师的名字。每次听同学提起贺老师好像是又爱又恨(应该可以这样形容吧)的样子:贺老师好,对每个同学都极有耐心,让人不自觉地想去亲近和倾听;贺老师不好,总是在解决了问题长舒一口气的时候提
2015-12-18 16:54:22
1216
1
原创 数据结构课程设计 图书管理系统
/* 烟台大学计算机与控制工程学院 作者:孙潇 时间:2015年12月25日 问题描述:设计一个计算机管理系统完成图书管理基本业务。并实现如下功能: 1.初始化图书信息 2.初始化读者信息 3.增加图书信息 4.增加用户信息 5.登记读者借阅信息
2015-12-25 16:18:22
6352
原创 第十六周项目四----英文单词的基数排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述: 设计一个基数排序的算法,将一组英文单词,按字典顺序排列。假设单词均由小写字母或空格构成,最长的单词有MaxLen个字母。 输入描述:无输出描述:若干数据*/#include #include #include #define MaxLen 9 //单词的最大长度#de
2015-12-19 21:00:01
486
原创 第十六周项目三---- 归并排序算法的改进
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:采用归并排序、快速排序等高效算法进行排序,当数据元素较少时(如n≤64),经常直接使用直接插入排序算法等高复杂度的算法。这样做,会带来一定的好处,例如归并排序减少分配、回收临时存储区域的频次,快速排序减少递归层次等。 试按上面的思路,重新实现归并排序算法。 输入描述:无输出描述:若干数据*/#inclu
2015-12-19 20:45:14
434
原创 第十六周项目一----基数排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(8)基数排序。 输入描述:无输出描述:若干数据*/#include #include #include
2015-12-19 20:43:30
438
原创 第十六周项目二----大数据集上排序算法性能的体验
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:设计一个函数,产生一个至少5万条记录的数据集合。在同一数据集上,用直接插入排序、冒泡排序、快速排序、直接选择排序、堆排序、归并排序、基数排序等算法进行排序,记录所需要的时间,经过对比,得到对复杂度不同的各种算法在运行时间方面的感性认识。提示1:这一项目需要整合多种排序算法,可以考虑先建设排序算法库,作为我们
2015-12-19 20:37:36
812
原创 第十六周项目一----归并排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:;(7)归并排序输入描述:无输出描述:若干数据*/#include #include #define Max
2015-12-19 20:31:18
408
原创 第十六周项目一----堆排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:;(6)堆排序输入描述:无输出描述:若干数据*/#include #define MaxSize 20typ
2015-12-19 20:28:40
380
原创 第十六周项目一----直接选择排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:;(5)直接选择排序输入描述:无输出描述:若干数据*/#include #define MaxSize 20
2015-12-19 20:20:50
389
原创 第十六周项目一----快速排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(4)快速排序输入描述:无输出描述:若干数据*/1.以第1个元素作为基准#include #defin
2015-12-19 20:15:55
374
原创 十六周项目一----冒泡排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:;(3)冒泡排序输入描述:无输出描述:若干数据*/#include #define MaxSize 20ty
2015-12-19 20:13:12
379
原创 第十六周项目一----希尔排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:;(2)希尔排序输入描述:无输出描述:若干数据*/1.希尔排序#include #define MaxSize
2015-12-19 20:08:44
404
原创 第十六周项目一----插入排序之直接插入排序
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(1)直接插入排序输入描述:无输出描述:若干数据*/1.直接插入排序#include #define MaxS
2015-12-19 19:59:34
385
原创 第十四周项目三-----是否二叉排序树?
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:设计一个算法,判断给定的二叉树是否是二叉排序树。输入描述:无输出描述:若干数据*/#include #include #define MaxSize 100typedef int KeyType; //定义关键字类型typedef char InfoType;
2015-12-19 19:51:00
368
原创 第十四周项目四----二叉树排序树中查找的路径
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:设计一个算法,输出在二叉排序中查找时查找某个关键字经过的路径输入描述:无输出描述:若干数据*/#include #include #define MaxSize 100typedef int KeyType; //定义关键字类型typedef char In
2015-12-19 19:47:48
352
原创 第十四周项目3----验证二叉排序树相关算法
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:认真阅读并验证二叉排序树相关算法。 (1)由整数序列{43,52,75,24,10,38,67,55,63,60}构造二叉排序树; (2)输出用括号法表示的二叉排序树; (3)用递归算法和非递归算法查找关键字55; (4)分别删除43和55,输出删除后用括号法表示的二叉排序树输入描述:无输出描
2015-12-19 19:27:10
407
原创 第十四周项目2----分块查找算法
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月19日问题描述:认真阅读并验证分块查找算法。请用22,4,23,11,20,2,15,13,30,45,26,34,29,35,26,36,55,98,56, 74,61,90,80,96,127,158,116,114,128,113,115,102,184,211,243,188,187,218,195,210,279,30
2015-12-19 19:10:45
604
原创 第14周项目1-(1)验证折半查找算法
/*烟台大学计算机与控制工程学院作 者:王聪日期:2015年12月18日问题描述:验证折半查找算法输入描述:无程序输出:测试数据*/#include #define MAXL 100typedef int KeyType;typedef char InfoType[10];typedef struct{ KeyType key;
2015-12-18 17:54:42
477
原创 第13周项目5-拓扑排序算法的验证
/*烟台大学计算机与控制工程学院作 者:孙潇日期:2015年12月18日问题描述:拓扑排序算法的验证输入描述:无程序输出:测试数据*/#include "graph.h"void TopSort(ALGraph *G){ int i,j; int St[MAXV],top=-1; //栈St的指针为top ArcNode *
2015-12-18 17:51:40
439
原创 第13周项目4-Floyd算法的验证
/*烟台大学计算机与控制工程学院作 者:孙潇日期:2015年12月18日问题描述:Floyd算法的验证输入描述:无程序输出:测试数据*/#include "graph.h"#define MaxSize 100void Ppath(int path[][MAXV],int i,int j) //前向递归查找路径上的顶点{ int k; k=path[i
2015-12-18 17:48:28
373
原创 第13周项目3-Dijkstra算法的验证
/*烟台大学计算机与控制工程学院作 者:孙潇日期:2015年12月18日问题描述:Dijkstra算法的验证。 输入描述:无 程序输出:测试数据*/#include "graph.h"#define MaxSize 100void Ppath(int path[],int i,int v) //前向递归查找路径上的顶点{ int k; k=path[
2015-12-18 17:39:28
408
原创 第13周项目2-Kruskal算法的验证
/*烟台大学计算机与控制工程学院作 者:孙潇日期:2015年11月23日 问题描述:Kruskal算法的验证。 输入描述:无 程序输出:测试数据*/#include "graph.h"#define MaxSize 100typedef struct{ int u; //边的起始顶点 int v; //边的终止顶点 int w;
2015-12-18 17:31:45
417
原创 第十三周项目一-1
/*烟台大学计算机与控制工程学院 作 者:孙潇 完成日期:2015年11月23日 问题描述:Prim算法的验证。 输入描述:无 程序输出:测试数据*/#include "graph.h"void Prim(MGraph g,int v){ int lowcost[MAXV]; //顶点i是否在U中 int min; int c
2015-12-18 17:23:08
472
原创 第十二周项目五-----迷宫问题之图深度优先遍历解法
烟台大学计算机与控制工程学院 作者:孙潇 时间:2015年12月15日 问题描述:【项目 - 迷宫问题之图深度优先遍历解法】 设计一个程序,采用深度优先遍历算法的思路,解决迷宫问题。 (1)建立迷宫对应的图数据结构,并建立其邻接表表示。 (2)采用深度优先遍历的思路设计算法,输出从入口(1,1)点到出口(M,N)的所有迷宫路径。 [模型建
2015-12-18 16:59:00
787
原创 第十二周项目四----利用遍历思想求解图问题之7最远顶点
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 求不带权连通图G中,距离顶点v最远的顶点k输入描述:无 输出描述:若干数据*/ #include #include #include "g
2015-12-18 09:22:55
867
原创 第十二周项目四----利用遍历思想求解图问题之6最短路径
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 求不带权连通图G中从顶点u到顶点v的一条最短路径。输入描述:无 输出描述:若干数据*/ #include #include #in
2015-12-18 09:19:45
504
原创 第十二周项目四----利用遍历思想求解图问题之输出通过一个节点的所有简单回路
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 求图中通过某顶点k的所有简单回路(若存在)输入描述:无 输出描述:若干数据*/ #include #include #include "g
2015-12-18 09:15:22
756
原创 第十二周项目四----利用遍历思想求解图问题之输出一些简单回路
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 输出图G中从顶点u到v的长度为s的所有简单路径。输入描述:无 输出描述:若干数据*/ #include #include #include
2015-12-18 09:09:44
474
原创 第十二周项目四----利用遍历思想求解图问题之输出所有路径
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 :输出从顶点u到v的所有简单路径。输入描述:无 输出描述:若干数据*/ #include #include #include "grap
2015-12-18 09:05:23
495
原创 第十二周项目四----利用遍历思想求解图问题之输出简单路径
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 假设图G采用邻接表存储,设计一个算法输出图G中从顶点u到v的一条简单路径(假设图G中从顶点u到v至少有一条简单路径)。输入描述:无 输出描述:若干数据*/
2015-12-18 08:52:18
758
1
原创 第十二周项目四---- 利用遍历思想求解图问题之简单路径
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。 设计一个算法,判断顶点u到v是否有简单路径 输入描述:无 输出描述:若干数据*/ #include #include #i
2015-12-18 08:44:55
425
原创 第十二周项目三----广度优先遍历
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:实现图遍历算法,输出如下图结构的广度优先遍历(BFS)序列。输入描述:无 输出描述:若干数据*/ #include #include #include "graph.h"void BFS(ALGraph *G, int v){ ArcNode
2015-12-18 08:34:44
456
原创 第十二周项目三-----深度优先遍历
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:实现图遍历算法,输出如下图结构的深度优先(DFS)遍历序列输入描述:无 输出描述:若干数据*/ #include #include #include "graph.h"int visited[MAXV];void DFS(ALGraph *G, int v)
2015-12-18 08:32:44
474
原创 第十二周项目二----操作用邻接表存储的图
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法: (1)输出出图G中每个顶点的出度; (2)求出图G中出度最大的一个顶点,输出该顶点编号; (3)计算图G中出度为0的顶点数; (4)判断图G中是否存在边 。 利用下图作为测试用图,输出结果提示:(1)分别设
2015-12-18 08:27:11
430
原创 第十二周项目一----图基本算法库
/*烟台大学计算机与控制工程学院 作者:孙潇 时间:2015年11月13日 问题描述:定义图的邻接矩阵和邻接表存储结构,实现其基本运算,并完成测试。 输入描述:无 输出描述:若干数据 */ 头文件:#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100 //最大顶点个数#d
2015-12-17 18:06:08
479
原创 第十一周项目二----用二叉树求解代数表达式
/*烟台大学计算机与控制工程学院 时间2015年12月14日 作者:孙潇 问题描述:用二叉树来表示代数表达式,树的每一个分支节点代表一个运算符,每一个叶子节点代表一个运算数(为简化,只支持二目运算的+、-、*、/,不加括号,运算数也只是一位的数字字符。本项目只考虑输入合乎以上规则的情况)。请设计算法,(1)根据形如“1+2?3?4/5”的字符串代表的表达式,构造出对应的二叉树(如图),用后序
2015-12-17 17:53:34
481
原创 第十周项目三----利用二叉树遍历思想解决问题
/*烟台大学计算机与控制工程学院作者:孙潇时间:2015年12月15日问题描述:假设二叉树采用二叉链存储结构存储,分别实现以下算法,并在程序中完成测试: (1)计算二叉树节点个数; (2)输出所有叶子节点; (3)求二叉树b的叶子节点个数 (4)设计一个算法Level(b,x,h),返回二叉链b中data值为x的节点的层数。 (5)判断二叉树是否相似(关于二叉树
2015-12-15 20:15:04
430
原创 第九周项目四-----广义表算法库及应用2
/*烟台大学计算机与控制工程学院 作者:孙潇 时间:2015年12月11日 问题描述: 设计算法,求出给定广义表g中的原子个数和最大原子输入描述:无 输出描述:若干数据 */ #include #include "glist.h"int atomnum(GLNode *g) //求广义表g中的原子个数{ if (g!=NULL) {
2015-12-14 21:15:22
484
原创 第九周项目四----广义表算法库及应用1
/*烟台大学计算机与控制工程学院 作者:孙潇 时间:2015年12月11日 问题描述: 广义算法库输入描述:无 输出描述:若干数据 */ 头文件glist.h#ifndef GLIST_H_INCLUDED#define GLIST_H_INCLUDEDtypedef char ElemType;typedef struct lnode{ int
2015-12-14 20:55:29
521
原创 第九周项目三----稀疏矩阵的三元组表示的实现及应用2
/*烟台大学计算机与控制工程学院 作者:孙潇 时间:2015年12月14日 问题描述: 采用三元组存储稀疏矩阵,设计两个稀疏矩阵相加的运算算法 提示1:两个行数、列数相同的矩阵可以相加 提示2:充分利用已经建立好的算法库解决问题输入描述: 输出描述:若干数据 */ 程序:#include #include "tup.h"bool MatAdd(TSMatr
2015-12-14 20:41:25
415
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人