自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 收藏
  • 关注

原创 课程设计-学生成绩系统

程序代码:/***********************************************版权所有 (C)2015,wangxiao**文件名称:chengjixitong.cpp*文件标识:无*内容摘要:实现学成成绩的输入、插入、删除、修改、统计和输出*其他内容:无*当前版本:V1.0*作者:王晓*完成日期:20151224**修改记录:*修改日期:201

2015-12-24 12:19:29 1171

原创 数据结构 期末总结

时间过得真快,转眼间,就要期末考试了,大二上学期也就要结束了。这一学期跟着贺老师用翻转课堂的方式学习数据结构,第一次接触翻转课堂,习惯了传统的上课模式,刚接触翻转课堂觉得不习惯,可慢慢的觉得翻转课堂确实比传统的教学模式好,我们可以在空闲的时间去看学习视频,如果看一遍没看懂,还可以重复的看多遍。        大一的时候学习C++,通过OJ写一些简单的代码,那时候学的是一些简单的语法,还没有往深

2015-12-18 08:11:28 894 1

原创 第十六周项目4-英文单词的基数排序

问题及代码:设计一个基数排序的算法,将一组英文单词,按字典顺序排列。假设单词均由小写字母或空格构成,最长的单词有MaxLen个字母。 #include #include #include #define MaxLen 9 //单词的最大长度#define Radix 27 //基数rd为27,分别对应' ','

2015-12-14 17:19:49 416

原创 第十六周项目3-归并排序算法的改进

问题及代码:采用归并排序、快速排序等高效算法进行排序,当数据元素较少时(如n≤64),经常直接使用直接插入排序算法等高复杂度的算法。这样做,会带来一定的好处,例如归并排序减少分配、回收临时存储区域的频次,快速排序减少递归层次等。试按上面的思路,重新实现归并排序算法。 #include #include #include #include #define MinL

2015-12-14 17:15:03 313

原创 第十六周项目2-大数据集上排序算法性能的体验

问题及代码:设计一个函数,产生一个至少5万条记录的数据集合。在同一数据集上,用直接插入排序、冒泡排序、快速排序、直接选择排序、堆排序、归并排序、基数排序等算法进行排序,记录所需要的时间,经过对比,得到对复杂度不同的各种算法在运行时间方面的感性认识。主函数main.cpp代码:#include #include #include #include #include "so

2015-12-14 17:04:09 493

原创 第十六周项目1(8)-基数排序

问题及代码:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(8)基数排序代码如下:#include #include #include #define MAXE 20 //线性表中最多元素个数#defin

2015-12-14 17:02:23 268

原创 第十六周项目1(7)-并归排序

问题及代码:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(7)并归排序代码如下:#include #include #define MaxSize 20typedef int KeyType; //定义关键字类型

2015-12-14 16:55:31 285

原创 第十六周项目1(6)-堆排序

问题及代码:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(6)堆排序#include #define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoTy

2015-12-14 16:48:25 273

原创 第十六周项目1(5)-直接选择排序

运行结果:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(5)直接选择排序#include #define MaxSize 20typedef int KeyType; //定义关键字类型typedef char Info

2015-12-14 16:44:01 252

原创 第十六周项目1(4)-快速排序

用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(4)快速排序以第一个数为基准,代码如下:#include #define MaxSize 20typedef int KeyType; //定义关键字类型typedef ch

2015-12-14 16:33:41 304

原创 第十六周项目1(3)-冒泡排序

问题及代码:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(3)冒泡排序代码如下:#include #define MaxSize 20typedef int KeyType; //定义关键字类型typedef cha

2015-12-14 16:26:03 257

原创 第十六周项目1(2)-希尔排序

问题及代码:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(2)希尔排序代码如下:#include #define MaxSize 20typedef int KeyType; //定义关键字类型typedef cha

2015-12-14 16:17:44 300

原创 第十六周项目1(1)-直接插入排序

问题及代码:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,运行并本周视频中所讲过的算法对应 程序,观察运行结果并深刻领会算法的思路和实现方法:(1)直接插入排序直接插入排序代码如下:#include #define MaxSize 20typedef int KeyType; //定义关键字类型typ

2015-12-14 16:07:45 289

原创 第十五周项目3-B-数的基本操作

问题及代码:实现B-树的基本操作。基于序列{4, 9, 0, 1, 8, 6, 3, 5, 2, 7}完成测试。 (1)创建对应的3阶B-树b,用括号法输出b树。 (2)从b中分别删除关键字为8和1的节点,用括号法输出删除节点后的b树。 代码如下:#include #include #define MAXM 10 //定义B-树的

2015-12-07 16:50:54 282

原创 第十五周项目2-用哈希法组建关键字

问题及代码:已知一个关键字序列为if、while、for、case、do、break、else、struct、union、int、double、float、char、long、bool,共15个字符串,哈希函数H(key)为关键字的第一个字母在字母表中的序号,哈希表的表长为26。(2)若处理冲突的方法采用链地址法,请设计算法,输出哈希表,并计算成功情况和不成功情况下的平均查找长度。代码

2015-12-07 16:41:24 301

原创 第十五周项目2-用哈希法组建关键字

问题及代码:已知一个关键字序列为if、while、for、case、do、break、else、struct、union、int、double、float、char、long、bool,共15个字符串,哈希函数H(key)为关键字的第一个字母在字母表中的序号,哈希表的表长为26。(1)若处理冲突的方法采用线性探测法,请设计算法,输出每个关键字对应的H(key),输出哈希表,并求成功情况

2015-12-07 16:35:57 303

原创 第十五周项目1-哈希表及其运算的实现

问题及代码:写程序建立序列{16, 74, 60, 43, 54, 90, 46, 31, 29, 88, 77}的哈希表,装填因子定为0.8,哈希函数为h(k)=key%p,p=11,采用线性探查法解决冲突。测试中:(1)输出建立的哈希表; (2)完成关键字为29的元素的查找; (3)在上述哈希表中删除关键字为77的元素,再显示哈希表。程序代码:#include

2015-12-07 16:05:44 561

原创 第十四周项目3-是否二叉排序树

问题及代码:设计一个算法,判断给定的二叉树是否是二叉排序树。代码如下:#include #include #define MaxSize 100typedef int KeyType; //定义关键字类型typedef char InfoType;typedef struct node /

2015-11-30 16:36:03 342

原创 第十四周项目2-二叉树排序树中查找的路径

问题及代码:设计一个算法,输出在二叉排序中查找时查找某个关键字经过的路径。 代码如下:#include #include #define MaxSize 100typedef int KeyType; //定义关键字类型typedef char InfoType;typedef struct node

2015-11-30 16:32:27 329

原创 第十四周项目1-验证算法(4)

问题及代码:验证平衡二叉树相关算法。 (1)由整数序列{43,52,75,24,10,38,67,55,63,60}构造AVL树; (2)输出用括号法表示的AVL树; (3)查找关键字55; (4)分别删除43和55,输出删除后用括号法表示的二叉排序树。 代码如下:#include #include typedef int KeyType;

2015-11-30 16:28:20 279

原创 第十四周项目1-算法验证(3)

问题及代码:验证二叉排序树相关算法。 (1)由整数序列{43,52,75,24,10,38,67,55,63,60}构造二叉排序树; (2)输出用括号法表示的二叉排序树; (3)用递归算法和非递归算法查找关键字55; (4)分别删除43和55,输出删除后用括号法表示的二叉排序树。代码如下:#include #include typedef int KeyType

2015-11-30 16:23:38 270

原创 第十四周项目1-验证算法(2)

问题及代码:验证分块查找算法,并用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,307,492,452,408,361,421,399,856,523,704,70

2015-11-30 16:15:46 324

原创 第十四周项目1-验证算法(1)

问题及代码:验证折半查找算法,并用有序表{12,18,24,35,47,50,62,83,90,115,134}作为测试序列,分别对查找90、47、100进行测试。折半查找算法代码:#include #define MAXL 100typedef int KeyType;typedef char InfoType[10];typedef struct{ K

2015-11-30 16:05:49 285

原创 第十三周项目5-拓扑排序算法验证

问题及代码:拓扑排序算法验证(使用图4作为测试用例) (图4)头文件代码:#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞#define MaxSize 100

2015-11-23 16:57:31 389

原创 第十三周项目4-Floyd算法验证

问题及代码:Floyd算法验证(使用图3作为测试用例) (图3)头文件代码:#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞#define MaxSize 100

2015-11-23 16:50:33 260

原创 第十三周项目3-Dijkstra算法的验证

问题及代码:Dijkstra算法的验证(使用图2作为测试用例) (图2)头文件代码:#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞#define MaxSize 10

2015-11-23 16:40:04 353

原创 第十三周项目2-Kruskal算法的验证

问题及代码:Kruskal算法的验证(使用图1作为测试用例) (图1)头文件代码:#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞#define MaxSize 100

2015-11-23 16:16:05 363

原创 第十三周项目1-Prim算法验证

问题及代码:Prim算法的验证(使用图1作为测试用例)图(1)头文件graph.h代码:#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞typedef int InfoTy

2015-11-23 16:07:06 287

原创 第十二周项目2-操作用邻接表存储的图

问题及代码:假设图G采用邻接表存储,分别设计实现以下要求的算法:   (1)输出出图G中每个顶点的出度;   (2)求出图G中出度最大的一个顶点,输出该顶点编号;   (3)计算图G中出度为0的顶点数;   (4)判断图G中是否存在边i,j>  。   利用下图作为测试用图,输出结果。头文件代码: #define MAXV 100

2015-11-16 17:09:16 332

原创 第十二周项目1-图算法库

问题及代码:定义图的邻接矩阵和邻接表的存储方式实现其基本运算,并完成测试。头文件graph.h代码:#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞typedef int InfoType;//以下定义邻接矩阵类型typedef struct{ int no

2015-11-16 16:14:49 269

原创 第十一周项目2-用二叉树求解算数表达式

问题及代码:       用二叉树来表示代数表达式,树的每一个分支节点代表一个运算符,每一个叶子节点代表一个运算数(为简化,只支持二目运算的+、-、*、/,不加括号,运算数也只是一位的数字字符。本项目只考虑输入合乎以上规则的情况)。请设计算法,(1)根据形如“1+2∗3−4/5  ”的字符串代表的表达式,构造出对应的二叉树(如图),用后序遍历的思路计算表达式的值时,能体现出先乘除后加减的规

2015-11-09 16:52:40 409

原创 第十一周项目1-二叉树算法验证(哈夫曼编码的算法验证)

问题及代码:哈夫曼树的存储及生成算法。程序代码:#include #include #define N 50 //叶子结点数#define M 2*N-1 //树中结点总数//哈夫曼树的节点结构类型typedef struct{ char data; //结点值 double weight; //权重

2015-11-09 16:47:41 371

原创 第十一周项目1-二叉树算法验证(中序线索化二叉树的算法验证 )

问题及代码:       以中序线索树为例。程序代码:#include #include #define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; int ltag,rtag; //增加的线索标记 struct node *lc

2015-11-09 16:45:30 297

原创 第十一周项目1-二叉树算法验证(二叉树算法构造的验证)

问题及代码:1.由先序序列和中序序列构造二叉树定理:任何n(n≥0)个不同节点的二叉树,都可由它的中序序列和先序序列唯一地确定。头文件btree.h代码:#ifndef BTREE_H_INCLUDED#define BTREE_H_INCLUDED#define MaxSize 100typedef char ElemType;typedef struct

2015-11-09 16:28:58 296

原创 第十一周项目一-二叉树算法验证(层次便利算法的验证)

问题及代码:        实现二叉树的层次遍历算法,并对用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”创建的二叉树进行测试。 头文件btree.h代码:#ifndef BTREE_H_INCLUDED#define BTREE_H_INCLUDED#define MaxSize 100typedef char ElemType;t

2015-11-09 16:14:51 381

原创 第十周项目3-用二叉树遍历思想解决问题

问题及代码:假设二叉树采用二叉链存储结构存储,分别实现以下算法,并在程序中完成测试:   (1)计算二叉树节点个数;   (2)输出所有叶子节点;   (3)求二叉树b的叶子节点个数;   (4)设计一个算法Level(b,x,h),返回二叉链b中data值为x的节点的层数。   (5)判断二叉树是否相似(关于二叉树t1和t2相似的判断:①t1和t2都是空的二叉树,相似;②

2015-11-02 16:56:20 237

原创 第十周项目3-利用二叉树遍历思想解决问题

问题及代码:假设二叉树采用二叉链存储结构存储,分别实现以下算法,并在程序中完成测试:   (1)计算二叉树节点个数;   (2)输出所有叶子节点;   (3)求二叉树b的叶子节点个数;   (4)设计一个算法Level(b,x,h),返回二叉链b中data值为x的节点的层数。   (5)判断二叉树是否相似(关于二叉树t1和t2相似的判断:①t1和t2都是空的二叉树,相似;②

2015-11-02 16:54:03 280

原创 第十周项目2-二叉树遍历的递归算法

问题及代码:实现二叉树的先序、中序、后序遍历的递归算法,并对用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”创建的二叉树进行测试。 头文件btree.h代码:#ifndef BTREE_H_INCLUDED#define BTREE_H_INCLUDED#define MaxSize 100typedef char ElemType;

2015-11-02 16:35:04 311

原创 第十周项目1-二叉树算法库

问题及代码:定义二叉树的链式存储结构,实现其基本运算,并完成测试。要求:在main函数中完成测试,包括如下内容:   (1)用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”创建如图的二叉树用于测试。        (2)输出二叉树   (3)查找值为’H’的节点,若找到,输出值为’H’的节点的左、右孩子的值   (4)求高度二叉树高度

2015-11-02 16:27:17 323

原创 第九周项目3-稀疏矩阵的三元组表示的实现及应用(1)

问题及代码:       建立稀疏矩阵三元组表示的算法库。头文件代码:

2015-10-29 20:07:40 341

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除