自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Z_sea的博客

雄关漫道真如铁,而今迈步从头越

  • 博客(25)
  • 收藏
  • 关注

原创 【数据结构】队列的应用-舞伴配对问题

舞会的舞伴配对问题:某单位举办周末友谊舞会,在舞会上,男、女各自排成一队。舞会开始时,依次从男队和女队的队头各出一人配成舞伴。如果两队初始人数不等,则较长的那一队中未配对者等待下一轮舞曲。假设初始男、女人数已经固定,舞会的轮数表示舞曲数。试模拟解决上述舞伴配对问题。核心代码:void PartnerPairing(CQueue &Qm,CQueue &Qw,int R...

2018-12-22 11:32:21 9134 2

原创 【数据结构】队列-链队列的基本定义

链队列的基本定义 :逻辑结构定义:typedef struct QNode{ QElemType data; struct QNode *next; QNode (QElemType Data=inf,struct QNode *Next=NULL){ data=Data;next=Next; }}QNode , *QueuePtr;t...

2018-12-22 10:09:44 1881

原创 【数据结构】队列-循环队列的基本定义

循环队列的基本定义 :顺序存储结构定义:typedef struct{ QElemType *base; int Front,Rear;}CQueue; 循环队列的基本操作:1、初始化一个队列2、清空一个队列3、判断一个队列是否为空4、求队列的长度5、入队列操作6、出队列操作7、取队头元素8、历遍操作1、初始化一个队列v...

2018-12-22 10:02:04 3875

原创 【数据结构】队列-队列的基本定义

队列的基本定义 :逻辑结构定义:typedef struct{ QElemType *base; int Front,Rear;}Queue;队列的基本操作:1、初始化一个队列2、清空一个队列3、判断一个队列是否为空4、求队列的长度5、入队列操作6、出队列操作7、取队头元素8、历遍操作 1、初始化一个队列void Ini...

2018-12-22 09:47:49 1790

原创 【数据结构】栈的应用-栈与递归

求n个整数的乘积:给定n个整数储存在数组里,利用递归来实现求乘积。#include<stdio.h>int productArray(int a[],int n){ if(n<1){ return 1; } return productArray(a,n-1)*a[n];}int main(){ int a[]={...

2018-12-21 21:04:32 300

原创 【数据结构】栈的应用-迷宫问题

迷宫求解问题是一个经典的程序设计问题,即求出一个入口到出口的一种或所有可行的路径。 核心代码:void InitMaze(int maze[N][M]){//根据输入的值,建立一个迷宫 printf("请输入迷宫的行数n和列数m:"); scanf("%d%d",&n,&m); printf("\n请输入迷宫的各行各列:\n用空格隔开,0代表路...

2018-12-20 21:35:36 527

原创 【数据结构】栈的应用-括号匹配

 括号匹配:核心代码:bool BracketsCheck(char str[]){ LinkList St; char *p=str; char e; InitStack(St); while(*p!='\0'){ //printf("%c\n",*p); if(*p=='{'||*p=='['||*p=='(')...

2018-12-20 15:45:11 569

原创 【数据结构】栈的应用-数制转换

对于任意的一个正整数n,都可以转换一个d进制数,一个简单的算法是基于原理n=(n/d)*d+n%d(其中/ 表示整除)的。例如:(668)10=(1234)8 利用栈先进后出的特点:核心代码:void Conversion(int n,int d){ LinkList St; InitStack(St); int e; while(n){ ...

2018-12-20 15:06:13 1254

原创 【数据结构】栈-链栈的基本定义

链栈的基本类型定义:typedef struct LNode{ int data; struct LNode *next; LNode (int Data=0,struct LNode * Next=NULL){ data=Data; next=Next; }}LNode ,*LinkList ;链栈的基本操作:1、初...

2018-12-20 14:41:56 4843

原创 【数据结构】栈-共享存储空间的顺序栈

共享存储空间的顺序栈的基本类型定义:typedef struct{ SElemType data[StackSize]; int top1,top2;}DuSqStack;共享存储空间的顺序栈的基本操作:1、初始化操作InitStackvoid InitStack(DuSqStack &S){ S.top1=0,S.top2=StackSize...

2018-12-20 14:34:32 504

原创 【数据结构】栈-顺序栈的基本定义

顺序栈的基本类型定义:typedef struct{ SElemType *base; int top; int stacksize;}SqStack;前提工作:提供realloc函数:template <class T>T* realloc_p(T* a,int Size){ T *t; t=new T [Size]; ...

2018-12-20 01:45:04 3607

原创 【数据结构】链表的应用-判断带头结点的循环双向链表是否对称

例题2-12:请设计算法,判断带头结点的循环双向链表是否对称核心代码:bool Symmetry(CDLinkList L){ CDLinkList p=L->next,q=L->pre; while(p!=q&&q->next!=p){ //链表个数为: 奇数 和偶数 同时讨论 if(p->data==...

2018-12-20 00:05:44 4827 1

原创 【数据结构】链表的应用-一元多项式的相乘运算

例题2-11_2:请设计算法,实现一元多项式的相乘运算。#include<stdio.h>#include<string.h>using namespace std;typedef struct PNode{ int coef; int exp; struct PNode *next; PNode(int Coef=0,int E...

2018-12-19 23:50:17 1113 1

原创 【数据结构】链表的应用-一元多项式的相加运算

例题2-11:请设计算法,实现一元多项式的相加运算。#include<stdio.h>#include<string.h>using namespace std;typedef struct PNode{ int coef; int exp; struct PNode *next; PNode(int Coef=0,int Exp...

2018-12-19 22:57:58 522

原创 【数据结构】链表的应用-约瑟夫环问题

例题2-10:约瑟夫环问题:编号1,2,3,……n的n个人按顺时针方向围成一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始报数,报到m时停止报数,报m的人出列,将他的密码作为新的m值,从下一个人开始重新从1开始报数,如此下去,直至所有人全部出列为止。请设计算法求出出列顺序。#include<stdio.h>#includ...

2018-12-19 15:41:12 280

原创 【数据结构】链表的应用-单链表的逆置

例题2-9:请设计算法,将带有头结点的链表进行就地逆置。有两种写法,一种是把链表进行头插法,进行逆置另一种方法就是把链表设置三变量不断往后指来移动。#include<stdio.h>#include<stdlib.h>#include<string.h>#include<iostream>#define LElemType ...

2018-12-19 14:34:21 925

原创 【数据结构】链表的应用-分裂为两个奇偶数的循环单链表

例题2-8:设L为一带头节点的循环单链表,链表中存储一组无序的整数。请设计算法,将链表中结点分成一个奇数链和一个偶数链的带有头结点的循环单链表,分别由P,Q指向;#include<stdio.h>#include<stdlib.h>#include<string.h>#include<iostream>#define LElemType...

2018-12-19 14:30:31 1112

原创 【数据结构】链表的应用-两个有序单链表合并

例题2-7:请设计算法,将两个按值递增有序的单链表合并成一个按值递增有序的单链表 进行了:原地处理和异地处理#include<stdio.h>#include<stdlib.h>#include<string.h>#include<iostream>#define LElemType intusing namespace st...

2018-12-19 02:00:39 1416 3

原创 【数据结构】循环单链表 合并

例题2-6 :将两个用尾指针表示的循环单链表合并成一个用尾指针表示的循环单链表合并成一个用尾指针表示的循环单链表这个模板出了一点问题,主要问题在于,我是直接套用了之前的做法,其实循环单链表,不用头指针,只用尾指针。但是我可以历遍来找到这个尾指针的位置。我用了两种方法,一种是原地操作,另一种是异地操作。#include<stdio.h>#include<st...

2018-12-19 00:16:18 949

原创 【数据结构】循环双向链表定义和基本操作

循环双向链表:循环双向链表的定义:typedef struct CDLNode{ LElemType data; struct CDLNode * pre; struct CDLNode * next; CDLNode(LElemType Data=0,struct CDLNode* Pre=NULL,struct CDLNode* Next=NULL){...

2018-12-18 22:40:26 1310

原创 【数据结构】循环单链表定义和基本操作

循环单链表:循环单链表的定义:typedef struct CLNode{ LElemType data; struct CLNode * next; CLNode(LElemType Data=inf,CLNode *Next=NULL){ data=Data; next=Next; }}CLNode , *CLinkL...

2018-12-18 14:38:09 3779

原创 【数据结构】双向链表定义和基本操作

双向链表:双向链表的定义:typedef struct DuLNode{ LElemType data; struct DuLNode *next; struct DuLNode *pre; DuLNode ( LElemType Data=0,struct DuLNode *Pre=NULL,struct DuLNode *Next=NULL){ ...

2018-12-18 09:26:42 5893 1

原创 【思维 | 图论 | 高斯消元】所罗门王的宝藏

题目:所罗门王的宝藏题意:给定一个n*m的矩阵,请问,这个矩阵能否通过一个零矩阵来通过行或列同时加减某一个数来构造出来。方法一:利用题意来找规律这个规律就是任意两行、两列之间的差值是不变的。  证明:①、当该行全±K时,其实对该行中,只是改变了该行与其他行的差值。用符号表示为: i行±K只会对j行的差值发生变化,(j∈[1,n] , i≠j)②、列证明同...

2018-12-18 00:34:44 478

原创 【数据结构】链表定义和基本操作

单链表:单链表的类型定义:typedef struct LNode{ LElemType data; struct LNode *next; LNode ( LElemType Data=0, struct LNode *Next=NULL){ data=Data; next=Next; }}LNode,*LinkList...

2018-12-17 15:04:03 898

原创 【数据结构】顺序表定义和基本操作

线性表主要两种结构:顺序存储  和  链式存储:这次写的顺序表,指的是线性表的顺序存储模式;定义类型:#define ListInitSize 100#define ListIncrement 10#define LElemType inttypedef struct Sqlist{ LElemType *base; int length; int...

2018-12-11 16:05:05 3850

空空如也

空空如也

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

TA关注的人

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