自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据结构课程设计

1.头文件#ifndef JC_H_INCLUDED#define JC_H_INCLUDED#include #include #include #include#define MAXID 10#define MAXNAME 20#define MAXCOURSE 3/* 学生数据结构 */typedef struct node{

2015-12-24 16:08:43 1156

原创 数据结构期末总结

经过了十六周的视频学习、课堂指导、上机实践,数据结构课程总算是圆满结束了,感觉时间过得好快,学到的只是些皮毛而已。尽管如此,我的收获还是挺多的,起码水平相比学习之前有了很大的提升,一些奇特的编程方法也学会了很多。       从第一节课的翻转课堂开始,贺老师就告诉我们他的课堂与其他老师的课堂不同,是新一代的教学方式,就是翻转课堂嘛!虽然我现在也没搞懂翻转课堂是什么意思,但起码我体验到与一般课堂

2015-12-18 08:13:39 988 1

原创 第15周 项目3—B-树的基本操作

#include #include #define MAXM 10 //定义B-树的最大的阶数typedef int KeyType; //KeyType为关键字类型typedef struct node //B-树结点类型定义{ int keynum;

2015-11-30 16:38:29 738

原创 第15周 项目2—用哈希法组织关键字(2)

(2)若处理冲突的方法采用链地址法,请设计算法,输出哈希表,并计算成功情况和不成功情况下的平均查找长度。#include #include #include #define N 15#define M 26typedef struct node //定义哈希链表的节点类型{ char *key; struct node *next;} LNode;type

2015-11-30 16:35:34 479

原创 第15周 项目2—用哈希法组织关键字

(1)若处理冲突的方法采用线性探测法,请设计算法,输出每个关键字对应的H(key),输出哈希表,并求成功情况下的平均查找长度。#include #include #define N 15#define M 26int H(char *s){ return ((*s-'a'+1)%M);}int main(){ char *s[N]= {"if", "while

2015-11-30 16:34:27 332

原创 第15周 项目1—(3)希尔排序

#include #define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,类型为InfoType}

2015-11-30 16:29:04 321

原创 第15周 项目1—(2)直接插入排序

#include #define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,类型为InfoType}

2015-11-30 16:26:28 338

原创 第15周 项目1—哈希表及其运算的实现

#include #define MaxSize 100 //定义最大哈希表长度#define NULLKEY -1 //定义空关键字值#define DELKEY -2 //定义被删关键字值typedef int KeyType; //关键字类型typedef char * InfoType; //其他数据类型

2015-11-30 16:24:36 477

原创 第12周 项目1—数据结构之自建算法库——图及其存储结构(邻接矩阵、邻接表)

1.头文件:graph.h,包含定义图数据结构的代码、宏定义、要实现算法的函数的声明;#ifndef GRAPH_H_INCLUDED#define GRAPH_H_INCLUDED#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞typedef int InfoType;//以下定义邻

2015-11-16 16:47:24 541

原创 迷宫问题之图深度优先遍历解法

已知图的邻接表如图3所示,根据算法,则从顶点0出发按深度优先遍历的结点序列是_ 0123

2015-11-16 16:32:29 1300 2

原创 第12周 项目1—图基本算法库

1.头文件:graph.h,包含定义图数据结构的代码、宏定义、要实现算法的函数的声明;#define MAXV 100 //最大顶点个数#define INF 32767 //INF表示∞typedef int InfoType;//以下定义邻接矩阵类型typedef struct{ int no;

2015-11-09 16:34:45 430

原创 第11周 项目1—(二叉树的构造)

1.头文件:btree.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子

2015-11-06 09:13:08 353

原创 第11周 项目2— 用二叉树求解代数表达式

1.头文件:btree.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子

2015-11-02 17:01:15 396

原创 第11周 项目—1 (层次遍历算法)

1.头文件:btree.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子

2015-11-02 16:45:46 355

原创 第10周 项目3—(1)计算二叉树节点个数

1.头文件:btree.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子 struc

2015-10-30 09:31:00 642

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

1.头文件:btree.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子 str

2015-10-30 09:25:41 433

原创 第10周 项目1—二叉树算法库

1.头文件:btree.h,包含定义顺序表数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子 struc

2015-10-30 09:20:24 405

原创 第9周 项目4—广义表算法库及应用

1.头文件:glist.h,包含定义稀疏矩阵的三元组表示数据结构的代码、宏定义、要实现算法的函数的声明;typedef char ElemType;typedef struct lnode{ int tag; //节点类型标识 union { ElemType data; //原子值

2015-10-23 08:57:30 559 1

原创 第9周 项目3—稀疏矩阵的三元组表示的实现及应用

1.头文件:tup.h,包含定义稀疏矩阵的三元组表示数据结构的代码、宏定义、要实现算法的函数的声明;#define M 6#define N 7#define MaxSize 100 //矩阵中非零元素最多个数typedef int ElemType;typedef struct{ int r; //行号

2015-10-23 08:51:53 491

原创 第9周 项目2—对称矩阵压缩存储的实现和应用

用压缩形式存储对称矩阵,实现下面的操作并测试 void Init(int *&b);//为N阶对称矩阵初始化存储数据的一维数组bint Value(int b[], int i, int j);//返回存储在b[M]中,对应二维数组A[i][j]的值void Assign(int b[], int e, int i, int j);//将e赋值给对应二维数组元素A[i][j],要存储到b[

2015-10-23 08:46:28 651

原创 第9周 项目1—猴子选大王(数组版)

在一个数组中,数组中用1表示猴子在圈中,用0表示猴子已经出圈,数组下标对应与猴子编号对应(例如数组元素p[0]值为1,表示第1只猴子尚在圈中,即p[i]代表编号为i+1的猴子是否在圈中)。  一只猴子出圈,则将对应的数组值置为0;在报数过程中,要跨过值为0的猴子。   若m=8, n=4,初始时数组如下:   其中有3只猴子出圈后,数组中的值如下:   数到最后一只

2015-10-23 08:32:52 467

原创 第7周 项目6—停车场模拟

设停车场是一个可停放n辆汽车的狭长死胡同,南边封口,汽车只能从北边进出(这样的停车场世间少有)。汽车在停车场内按车辆到达时间的先后顺序,最先到达的第一辆车停放在车场的最南端,依次向北排开。若车场内已停满n辆汽车,则后来的汽车只能在门外的候车场上等候,一旦有车开走,则排在候车场上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路(假定停车场内设有供车辆进出的便道,

2015-10-23 08:17:52 432

原创 第7周 项目5—排队看病模拟

(1)病人到达诊室,将病历本交给护士,排到等待队列中候诊。   (2)护士从等待队列中取出下一位病人的病历,该病人进入诊室就诊。   要求模拟病人等待就诊这一过程。程序采用菜单方式,其选项及功能说明如下:   (1)排队——输入排队病人的病历号,加入到病人排队队列中。   (2)就诊——病人排队队列中最前面的病人就诊,并将其从队列中删除。   (3)查看排队——从队首到队尾列出

2015-10-23 08:14:15 369

原创 第8周 项目5—计数的模式匹配

1.头文件:sqString.h,包含定义链队数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100 //最多的字符个数typedef struct{ char data[MaxSize]; //定义可容纳MaxSize个字符的空间 int length; //标记当前

2015-10-12 17:12:39 396

原创 第8周 项目4—字符串加密

1.头文件:sqString.h,包含定义链队数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100 //最多的字符个数typedef struct{ char data[MaxSize]; //定义可容纳MaxSize个字符的空间 int length; //标记当前

2015-10-12 17:01:04 326

原创 第8周 项目3—顺序串算法

1.头文件:sqString.h,包含定义链队数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100 //最多的字符个数typedef struct{ char data[MaxSize]; //定义可容纳MaxSize个字符的空间 int length; //标记当前

2015-10-12 16:54:59 429

原创 第7周 项目2—建立链队算法库

1.头文件:liqueue.h,包含定义链队数据结构的代码、宏定义、要实现算法的函数的声明;typedef char ElemType;typedef struct qnode{ ElemType data; struct qnode *next;} QNode; //链队数据结点类型定义typedef struct{ QNo

2015-10-12 16:48:48 353

原创 第8周 项目1—建立顺序串的算法库

1.头文件:sqString.h,包含定义链队数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100 //最多的字符个数typedef struct{ char data[MaxSize]; //定义可容纳MaxSize个字符的空间 int length; //标记当前

2015-10-12 16:37:48 399

原创 第7周 项目4—队列数组

1.头文件:liqueue.h,包含定义链队数据结构的代码、宏定义、要实现算法的函数的声明;typedef int ElemType;typedef struct qnode{ ElemType data; struct qnode *next;} QNode; //链队数据结点类型定义typedef struct{ QNod

2015-10-12 16:32:23 413

原创 第7周 项目3—负数把正数赶出队列

1.头文件:sqqueue.h,包含定义顺序环形队列数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 5typedef int ElemType;typedef struct{ ElemType data[MaxSize]; int front,rear; /*队首和队尾指针*/} SqQueue;void

2015-10-12 16:25:13 306

原创 第8周 项目2—建立链串算法库

1.头文件:liString.h,包含定义链队数据结构的代码、宏定义、要实现算法的函数的声明;typedef struct snode{ char data; struct snode *next;} LiString;void StrAssign(LiString *&s,char cstr[]); //字符串常量cstr赋给串svoid StrC

2015-10-12 16:15:49 300

原创 第7周 项目1—建立顺序环形队列算法库

1.头文件:sqqueue.h,包含定义顺序环形队列数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 5typedef char ElemType;typedef struct{ ElemType data[MaxSize]; int front,rear; /*队首和队尾指针*/} SqQueue;void InitQueu

2015-10-09 09:28:55 442 1

原创 第6周 项目5—后缀表达式

初始化运算符栈op;将'='进栈;从exp读取字符ch;while (ch!='\0'){ if (ch不为运算符)    将后续的所有数字均依次存放到postexp中,并以字符'#'标志数值串结束; else switch(Precede(op栈顶运算符,ch)) { case ': //栈顶运算符优先级低

2015-10-09 09:20:24 521

原创 第6周 项目4—数制转换

1.头文件:sqstack.h,包含定义顺序栈数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef int ElemType;typedef struct{ ElemType data[MaxSize]; int top; //栈指针} SqStack; //

2015-10-09 09:17:46 381

原创 第6周 项目3—括号的匹配

1.头文件:sqstack.h,包含定义顺序栈数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct{ ElemType data[MaxSize]; int top; //栈指针} SqStack; /

2015-10-09 09:12:46 399

原创 第6周 项目2—建立链栈算法库

1.头文件:listack.h,包含定义链栈数据结构的代码、宏定义、要实现算法的函数的声明;typedef char ElemType;typedef struct linknode{ ElemType data; //数据域 struct linknode *next; //指针域} LiStack;

2015-10-09 09:00:12 460

原创 第6周 项目1—建立顺序栈算法库

1.头文件:sqstack.h,包含定义顺序栈数据结构的代码、宏定义、要实现算法的函数的声明;#define MaxSize 100typedef char ElemType;typedef struct{ ElemType data[MaxSize]; int top; //栈指针} SqStack; /

2015-10-09 08:54:50 378

原创 第四周 项目6—多项式求和

两个多项式相加,其规则是对具有相同指数的项,令其系数相加。设两个待相加的多项式的链表的头指针分别为head1(第一个多项式)和head2(第二个多项式),两者的和保存到链表head1中。只需要先将head1和head2链表的首结点作为当前结点(分别用p1和p2指向)开始检测,在遍历链表的过程中,分情况作如下处理:  (1)若两个多项式中当前结点的指数值相同,则它们的系数相加,结果保存到p1

2015-10-05 16:56:22 473

原创 第四周 项目5—猴子选大王

一群猴子,编号是1,2,3 …m,这群猴子(m个)按照1-m的顺序围坐一圈。从第1只开始数,每数到第n个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。输入m和n,输出为大王的猴子是几号。#include using namespace std;struct Monkey{ int num; //猴子的编号 struct M

2015-10-05 16:35:58 293

原创 第四周 项目4—建设双链表算法库

1.头文件:cdlinklist.h,包含定义双链表数据结构的代码、宏定义、要实现算法的函数的声明;//循环双链表基本运算函数typedef int ElemType;typedef struct DNode //定义双链表结点类型{ ElemType data; struct DNode *prior; //指向前驱结点 stru

2015-10-05 16:27:17 343

空空如也

空空如也

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

TA关注的人

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