自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 课程设计--通讯录

/* 文件名称:main.cpp 作者: 孙子策 完成日期:2016.12.30 问题描述:个人通讯录管理系统 */ include "Contacts.h" int main() { struct address_list *head=NULL; char num[10]; printf("*=*=*=*=*=

2016-12-30 15:10:33 584

原创 第十六周--学期总结

大二上学期就要结束了,但是感觉课程还是没有学多少,刚开始进行翻转课堂的时候很好奇,能跟上老师的进度,课下不会的也会想想,博客也是能理解就理解,能手敲出来最好,但是随着课程的进行,代码太多,很迷茫,不知道重点,就开始抄别人的代码,到了后面,理解是都能理解的,但是代码就是打不出来,不知道考试会怎么考,但是蓝魔云的视频还是坚持每周都能看完,最起码知识点还是知道的,虽然知道的不是很多,也不是能写出各种代码

2016-12-16 10:24:37 377

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

/* *作 者:孙子策 *完成日期:2016.12.15 *问题描述:设计一个基数排序的算法,将一组英文单词,按字典顺序排列。假设单词均由小写字母或空格构成,最长的单词有MaxLen个字母。 */ #include #include #include #define MaxLen 9 //单词的最大长度 #d

2016-12-15 11:26:41 302

原创 第十六周--归并算法的改进

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

2016-12-15 11:19:57 458

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

/* *作 者:孙子策 *完成日期:2016.12.15*问题描述:设计一个函数,产生一个至少5万条记录的数据集合。在同一数据集上,用直接插入排序、冒泡排序、快速排序、直接选择排序、堆排序、归并排序、基数排序等算法进行排序,记录所需要的时间,经过对比,得到对复杂度不同的各种算法在运行时间方面的感性认识。 提示1:这一项目需要整合多种排序算法,可以考虑先建设排序算法

2016-12-15 11:12:27 387

原创 第十六周--冒泡排序

/* *作 者:孙子策 *完成日期:2016.12.15*问题描述:用序列{57,40,38,11,13,34,48,75,6,19,9,7}作测试数据,验证冒泡排序 */ #include #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char InfoType[10];

2016-12-15 11:01:27 519

原创 第十六周--基数排序

/* *作 者:孙子策 *完成日期:2016.12.15*问题描述:用序列{57,40,38,11,13,34,48,75,6,19,9,7}作测试数据,验证归基数排序 */ #include #include #include #define MAXE 20 //线性表中最多元素个数 #define MAXR 10

2016-12-15 10:58:38 225

原创 第十六周--归并排序

/* *作 者:孙子策 *完成日期:2016.12.15 *问题描述:用序列{57,40,38,11,13,34,48,75,6,19,9,7}作测试数据,验证归并排序 */ #include #include #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char I

2016-12-15 10:51:16 608

原创 第十六周--堆排序

/* *作 者:孙子策 *完成日期:2016.12.15*问题描述:用序列{57,40,38,11,13,34,48,75,6,19,9,7}作为测试数据,验证堆排序 */#include #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char InfoType[10

2016-12-15 10:47:38 281

原创 第十六周--直接选择排序

/* *作 者:孙子策 *完成日期:2016.12.15 *问题描述:用序列{57,40,38,11,13,34,48,75,6,19,9,7}作为测试数据,验证直接选择排序 */ #include #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char InfoTyp

2016-12-15 10:30:46 372

原创 第十六周--快速排序

/* *作 者:孙子策 *完成日期:2016.12.15 *问题描述:用序列{57, 40, 38, 11, 13, 34, 48, 75, 6, 19, 9, 7}作为测试数据,验证快速排序 */ #include #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char

2016-12-15 10:26:17 524

原创 第十五周--B-树的操作

/* *作 者:孙子策 *完成日期:2016.12.8 *问题描述: 实现B-树的基本操作。基于序列{4, 9, 0, 1, 8, 6, 3, 5, 2, 7}完成测试。    (1)创建对应的3阶B-树b,用括号法输出b树。    (2)从b中分别删除关键字为8和1的节点,用括号法输出删除节点后的b树。 */ #inc

2016-12-08 19:18:10 808

原创 第十四周--平衡二叉树

/* *作 者:孙子策 *完成日期:2016.12.8*问题描述:认真阅读并验证平衡二叉树相关算法。 (1)由整数序列{43,52,75,24,10,38,67,55,63,60}构造AVL树; (2)输出用括号法表示的AVL树; (3)查找关键字55; (4)分别删除43和55,输出删除后用括号法表示的二叉排序树。 */ #include

2016-12-08 16:47:39 337

原创 第十四周--二叉树排序

/* *作 者:孙子策 *完成日期:2016.12.8 *问题描述:认真阅读并验证二叉排序树相关算法。 (1)由整数序列{43,52,75,24,10,38,67,55,63,60}构造二叉排序树; (2)输出用括号法表示的二叉排序树; (3)用递归算法和非递归算法查找关键字55; (4)分别删除43和55,输出删除后用括号法表示的二叉排序树。 */ #in

2016-12-08 16:45:01 341

原创 第十四周--折半查找

/* *作 者:孙子策 *完成日期:2016.12.8*问题描述:请用{8,14,6,9,10,22,34,18,19,31,40,38,54,66,46,71,78,68,80,85,100,94,88,96,87}(共n=25据,每块数据个数s=5作为数据表,自行构造索引表,分别对查找85测试。*/ #include #define MAXL 100

2016-12-08 16:42:27 540

原创 第十五周--用哈希组织关键字

/* *作 者:孙子策*完成日期:2016.12.8 *问题描述:已知一个关键字序列为if、while、for、case、do、break、else、struct、union、int、double、float、char、long、bool,共15个字符串,哈希函数H(key)为关键字的第一个字母在字母表中的序号,哈希表的表长为26。 (1)若处理冲

2016-12-08 16:38:40 260

原创 第十五周--验证算法

/* *作 者:孙子策*完成日期:2016.12.8*问题描述:认真阅读并验证哈希表实施查找的相关算法,写程序建立序列{16, 74, 60, 43, 54, 90, 46, 31, 29, 88, 77}的哈希表,装填因子定为0.8,哈希函数为h(k)=key%p,p=11,采用线性探查法解决冲突。测试中: (1)输出建立的哈希表; (2)完成关键字为29的元素的查

2016-12-08 16:28:01 277

原创 第十四周--分块查找

/* *作 者:孙子策 *完成日期:2016.12.1*问题描述:请用{8,14,6,9,10,22,34,18,19,31,40,38,54,66,46,71,78,68,80,85,100,94,88,96,87}(共n=25据,每块数据个数s=5作为数据表,自行构造索引表,分别对查找85测试。 */ #include #define MAXL

2016-12-01 10:19:06 630

原创 第十四周--折半查找

/* *作 者:孙子策*完成日期:2016.12.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];ty

2016-12-01 10:10:30 287

原创 第十三周--拓扑排序的验证

/**作 者:孙子策*完成日期:2016.11.24*问题描述:拓扑排序 */ 代码:#include #include #include "graph.h" void TopSort(ALGraph *G) { int i,j; int St[MAXV],top=-1; //栈St的指针为top

2016-11-24 11:11:54 283

原创 第十三周--floyd算法的验证

/* *作 者:孙子策*完成日期:2016.11.24*问题描述:每对顶点之间的最短路径 */ 代码:#include #include #include "graph.h" #define MaxSize 100 void Ppath(int path[][MAXV],int i,int j) //前向递归查找路径上的顶点 {

2016-11-24 11:05:40 184

原创 第十三周--dijikstra算法的验证

/* *作 者:孙子策 *完成日期:2016.11.24 *问题描述:从一个顶点到其他定点的最短路径 */ 代码:#include #include #include "graph.h" #define MaxSize 100 void Dijkstra(MGraph g,int v) { int dist[MAXV],path[MAXV];

2016-11-24 10:59:16 244

原创 第十三周--kruskal算法的验证

/作 者:孙子策完成日期:2016.11.24 问题描述:验证克鲁斯卡尔算法 / 代码:#include #include #include "graph.h" #define MaxSize 100 typedef struct { int u; //边的起始顶点 int v; //边的终止顶点 i

2016-11-24 10:37:08 180

原创 第十三周--prim算法的验证

/ 作 者:孙子策完成日期:2016.11.24问题描述:验证最小生成树的普里姆算法 / .cpp代码:void Prim(MGraph g,int v) { int lowcost[MAXV]; //顶点i是否在U中 int min; int closest[MAXV],i,j,k; for (i

2016-11-24 10:27:05 266

原创 第十二周--利用遍历思想求解图问题

/作 者:孙子策完成日期:2016.11.17问题描述: 假设图G采用邻接表存储,分别设计实现以下要求的算法,要求用区别于示例中的图进行多次测试,通过观察输出值,掌握相关问题的处理方法。    (1)设计一个算法,判断顶点u到v是否有简单路径    (2)设计一个算法输出图G中从顶点u到v的一条简单路径(设计测试图时,保证图G中从顶点u到v至少有一条简

2016-11-17 11:04:30 335

原创 第十二周--迷宫问题之图深度优先遍历

/ 作 者:孙子策 完成日期:2016.11.17问题描述:设计一个程序,采用深度优先遍历算法的思路,解决迷宫问题。   (1)建立迷宫对应的图数据结构,并建立其邻接表表示。   (2)采用深度优先遍历的思路设计算法,输出从入口(1,1)点到出口(M,N)的所有迷宫路径。 [模型建立]   将迷宫中的每一格作为一个顶点,相邻格子可以到达,则对应的顶点之间存在边

2016-11-17 10:48:22 344

原创 第十二周--图的广度遍历

/ 作 者:孙子策 完成日期:2016.11.17问题描述:图的广度遍历/#include #include #include "s.h"void BFS(ALGraph *G, int v){ ArcNode *p; int w,i; int queue[MAXV],front=0,rear=0; //定义循环队

2016-11-17 10:40:59 238

原创 第十二周--图遍历算法实现深度优先

/ 作 者:孙子策 完成日期:2016.11.17问题描述:利用图的算法库实现深度优先遍历序列/.cpp代码:#include#include#include"s.h"//功能:由一个反映图中顶点邻接关系的二维数组,构造出用邻接矩阵存储的图//参数:Arr - 数组名,由于形式参数为二维数组时必须给出每行的元素个数,在此将参数Arr声明为一

2016-11-17 10:31:14 336

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

/姓名:孙子策时间:2016.11.17问题描述及代码:假设图G采用邻接表存储,分别设计实现以下要求的算法: (1)输出出图G中每个顶点的出度; (2)求出图G中出度最大的一个顶点,输出该顶点编号; (3)计算图G中出度为0的顶点数; (4)判断图G中是否存在边 。 利用下图作为测试用图,输出结果。 提示:(1)分别设计函数实现算法;(2)不要全部实现完再测

2016-11-17 10:19:19 237

原创 第十二周--图基本算法库

/ 作 者:孙子策 完成日期:2016.11.17问题描述:定义图的邻接矩阵和邻接表存储结构,实现其基本运算,并完成测试。 要求: 1、头文件graph.h中定义相关的数据结构并声明用于完成基本运算的函数。对应基本运算的函数包括:void ArrayToMat(int *Arr, int n, MGraph &g); //用普通数组构造图的邻接矩阵void

2016-11-17 10:09:54 168

原创 第十一周--用二叉树求解代数表达公式

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

2016-11-10 11:22:58 560

原创 第十一周--哈弗曼树的算法验证

/ 作 者:孙子策 完成日期:2016.11.10问题描述:根据哈夫编码树求对应的哈夫编码的算法/#include #include #define N 50 //叶子结点数#define M 2*N-1 //树中结点总数//哈夫曼树的节点结构类型typedef struct{ char data; //结点

2016-11-10 11:13:03 258

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

/ 作 者:孙子策 完成日期:2016.11.10问题描述:将二叉树线索化表示出来 /代码:#include #include #define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; int ltag,rtag;

2016-11-10 11:11:53 187

原创 第十一周--二叉树构造算法的验证【后中】

/姓名:孙子策时间:2016.11.10问题:用后中序来验证二叉树构造算法。/main.cpp代码:#include#include"hs.h"int main(){ ElemType in[]="DGBAECF",post[]="GDBEFCA"; BTNode *b2; b2=CreateBT2(post,in,7);

2016-11-10 11:03:24 199

原创 第十一周--二叉树构造算法的验证【先中】

/姓名:孙子策时间:2016.11.10问题:利用先中序对二叉树构造算法进行验证/.h代码:#ifndef BTREE_H_INCLUDED#define BTREE_H_INCLUDED#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data;

2016-11-10 10:56:40 193

原创 第十一周--层次遍历算法的验证

/ 作 者:孙子策 完成日期:2016.11.10问题描述:实现二叉树的层次遍历算法,并对用”A(B(,D(,G)),C(E,F))”创建的二叉树进行测试/.h代码:#ifndef BTREE_H_INCLUDED#define BTREE_H_INCLUDED#define MaxSize 100typedef char ElemType;t

2016-11-10 10:25:37 210

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

/作者:孙子策完成日期;2016.11.3问题描述:(1)计算二叉树节点个数;   (2)输出所有叶子节点;   (3)求二叉树b的叶子节点个数   (4)设计一个算法Level(b,x,h),返回二叉链b中data值为x的节点的层数。 输入描述:输入二叉树的各个节点值程序输出:根据要求输出/.h代码:#define MaxSize 100

2016-11-03 11:29:36 229

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

/ 作 者:孙子策 完成日期:2016.11.3问题描述:实现二叉树的先序、中序、后序遍历的递归算法,并对用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”创建的二叉树进行测试。 请利用二叉树算法库。/.cpp代码:#include #include #include "ss.h"void CreateBTNode(

2016-11-03 10:29:29 243

原创 第十周--建立二叉树算法库

/ 作 者:孙子策 完成日期:2016.11.3问题描述:定义二叉树的链式存储结构,实现其基本运算,并完成测试。 要求:   1、头文件btree.h中定义数据结构并声明用于完成基本运算的函数。对应基本运算的函数包括:void CreateBTNode(BTNode *&b,char *str); //由str串创建二叉链BTNode *Find

2016-11-03 10:02:27 388

原创 第九周--建立广义表算法库

/ 作 者:孙子策 完成日期:2016.10.27问题描述:建立广义表算法库,包括: ① 头文glist.h,定义数据类型,声明函数; ② 源文件glist.cpp,实现广义表的基本运算,主要算法包括:int GLLength(GLNode *g); //求广义表g的长度int GLDepth(GLNode *g); //求广义表g的深度G

2016-10-27 10:52:09 408

空空如也

空空如也

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

TA关注的人

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