自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 3.3双端队列的表示与实现

3.3双端队列的表示与实现 双端队列有两个端部,首部和尾部,并且项在集合中保持不变。 双端队不同的地方是添加和删除项是非限制性的。可以在前面或后面添加新项;同样,可以从任一端移除现有项。 代码实现: #include <stdio.h> #include <stdlib.h> #define QUEUESIZE 8 typedef char DataType; typedef struct DQueue { DataType queue[QUEUESIZE]; int

2020-12-14 19:49:34 276

原创 3.2链式队列的表示与实现

3.2链式队列的表示与实现 使用链栈和链队进行字符串回文(对称)判断。 代码实现: test.c #include <stdio.h> #include <stdlib.h> #include <string.h> typedef char DataType; //链式堆栈 typedef struct snode { DataType data; struct snode* next; }LSNode; //只有队尾的链式循环队列 typedef str

2020-12-13 23:35:32 268 1

原创 3.1顺序循环队列的表示与实现

3.1顺序队列的表示与实习 顺序队列通常采用一维数组进行存储。其中,连续的存储单元依次存放队列中的元素。同时,使用两个指针分别表示数组中存放的第一个元素和最后一个元素的位置。指向第一个元素的叫队头指针(front),指向最后一个元素的叫队尾指针(rear)。 代码实现:(为了防止假溢出,加tag标志位) test.c #include <stdio.h> #include <stdlib.h> #define QUEUESIZE 10 typedef char Data

2020-12-13 23:30:56 327

原创 2.2链栈的表示与实现

2.2链栈的表示与实现 采用链式存储方式的栈称为链栈或者链式栈。设置头结点。并且一般top指向头结点。 代码实现: LinkStack.h #pragma once #include <stdio.h> #include <stdlib.h> typedef char DataType; typedef struct node { DataType data; struct node* next; }LStackNode,*LinkStack; //初始化 voi

2020-12-13 23:24:50 240

原创 2.1顺序栈的表示与实现

2.1顺序栈的表示与实现 栈(stack),也称堆栈,是一种特殊的线性表,只允许在一端进行插入和删除操作。栈表允许操作的一端叫栈顶,另一端称栈底。栈顶是动态变化的,它由一个栈顶指针top的变量来指示。当表中没有元素时,称为空栈。 代码实现: SSeqStack.h #pragma once #include <stdio.h> #include <stdlib.h> #define STACKSIZE 100 typedef char DataType; typedef

2020-12-13 23:21:09 294

原创 1.5静态链表的表示与实现

1.5静态链表的表示与实现 静态链表可用一维数组来描述,用游标模拟指针。游标的作用就是指示元素的直接后继。这里的游标的数据类型不是动态链表的指针类型,而是整型数字。 代码实现: SLinkList.h #pragma once #include <stdio.h> #include <stdlib.h> #define ListSize 100 typedef int DataType; typedef struct { DataType data; int cur

2020-12-13 13:43:39 145

原创 1.4双向链表表示与实现

1.4双向链表 1、双向链表是指链表中每个结点都有两个指针域,一个指向后继结点,一个指向前驱结点。prior和next. 2、双向链表也分带头和不带头,带头操作更加方便。双向链表也有循环结构,称双向循环链表。 3、带头双向循环链表的判空条件为head->prior==head或head->next==head; 代码实现: DLinkList.h #pragma once #include <stdio.h> #include <stdlib.h> typ

2020-12-13 13:13:46 242

原创 1.3循环单链表之约瑟夫问题

1.3循环单链表之约瑟夫问题 约瑟夫问题:有n个人,编号为1----n,围成一个圆圈,顺时针转,从第k个人开始报数1,然后报到m的人出列,他的下一个人开始继续从1报数,重复,直到所有人出列。要求n m k自己输入。 代码实现: #include <stdio.h> #include <stdlib.h> #include <malloc.h> #define ListSize 100 typedef int DataType; typedef struct N

2020-12-13 13:10:28 439

原创 1.2线性表的链式表示与实现

1.2线性表的链式表示与实现 在顺序表中,由于逻辑上相邻的元素物理位置也相邻,因此它有一个优点:可以随机存取顺序表中的任意一个元素。但同时也有缺点,插入和删除运算需要移动大量的元素,采用顺序存储必须事先分配好内存单元,而事先分配的存储单元大小不一定刚好满足需要。 单链表的存储结构 1、需要存储数据和后继元素的地址信息,这两部分组成的存储结构叫节点(Node)。由于每个节点的指针域只有一个,这样的链表被称为线性链表或单链表。物理上的存储叫链式存储。 2、有时为了操作方便,通常在第一个节点前加一个节点,

2020-12-09 22:03:07 261

原创 1.1线性表的顺序表示与实现

1.1线性表的顺序实现 线性表的顺序存储指的是将线性表中的元素存放在一组连续的存储单元中,这样使得在逻辑上是相邻的,物理存储上也是相邻的。采用顺序存储结构的线性表称为顺序表。 顺序表反应了线性表中元素的逻辑关系,只要知道第一个元素的存储地址就能得到线性表中任何一个元素的存储地址。同样已知任何一个元素的存储地址都可以得到其他元素的存储地址。因此线性表中的任何一个元素都可以随机存取,线性表的顺序存储结构是一种随机存取的存储结构。 问题:如果A中的元素在B中出现过,将A中的删除。 解决: 头文件 #

2020-12-09 21:55:58 377

原创 Java_收发红包简单实现

题目: 在一个群(有一个群主,四个群成员)中,群主给群成员发平均红包的简单实现。 分析: 1、群主和群成员都有姓名、余额,所以可以使用继承搞定。 2、发红包分析: 将发红包写成一个方法,方法名称为send,参数列表为总共发多少钱(int totalMoney)和发几个红包(int count),返回值为一个集合ArrayList<Integer>。 收红包的分析: 将收红包写成一个方法,方法名称为receive,参数列表为ArrayList<Integer>,返回值为v

2020-07-21 22:33:09 707

空空如也

空空如也

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

TA关注的人

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