数据结构
使用C/C++语言实现数据结构的一些基本操作
chenmoan
选择的本身可能并没有什么意义!是你的努力和坚持让它有了意义!
展开
-
数据结构(目录导航)
文章目录静态法 、 带头结点动态法、 不带头结点静态法实现顺序表(C/C++)动态法实现顺序表(C/C++)单链表(带头结点)(C/C++)链式队列(不带头结点 )(C/C++)双链表(C/C++)循环链表&&静态链表(C/C++)顺序栈(C/C++)共享栈(C/C++)链栈(带头结点)(C/C++)链栈(不带头结点)(C/C++)顺序队列(C/C++)–链式队列(带头结点)(C/C++)链栈(不带头结点)(C/C++)原创 2021-08-19 18:02:27 · 224 阅读 · 0 评论 -
静态法实现顺序表(C/C++)
写在最前面:本人使用Visual Studio 2019进行调试,该编译器限制使用“scanf()”函数,代替为更安全的“scanf_s()”;虽然代码延续的是C语言的风格,但是代码后缀最好是“.cpp”,因为有些语句是C++的,比如for (int i = 0; i < L.length; i++),i变量没有提前声明。测试部分的k,只是用来接收不同变量的形参,不想为每一个变量都其一个名字了,索性就都使用了k/*静态法实现顺序表的基本操作*/#include<stdio.h>原创 2021-07-12 17:49:11 · 222 阅读 · 0 评论 -
动态法实现顺序表(C/C++)
/*动态法实现顺序表的基本操作*/#include<stdio.h>#include<stdlib.h> //malloc函数与free函数#define InitSize 5 //顺序表的初始容量typedef int Elemtype;typedef int status;/*使用动态法定义顺序表,初始化*/typedef struct{ Elemtype* data; int maxsize;//动态法实现顺序表的容量最大值 int length;//原创 2021-07-12 20:08:23 · 208 阅读 · 0 评论 -
单链表(带头结点)(C/C++)
//带头结点的单链表#include<stdio.h>#include<stdlib.h>typedef int Elemtype;typedef int Status;//创建单链表结点typedef struct LNode{ Elemtype data; struct LNode* next;}LNode, * LinkList;//对单链表进行初始化bool InitList(LinkList& L){ L = (LNode*)mal原创 2021-07-30 22:33:11 · 199 阅读 · 0 评论 -
单链表(无头结点)(C/C++)
带头结点与不带头结点的单链表,在进行操作时有哪些区别呢?当对单链表的表首元素进行删除或插入操作时,要进行区别处理,无头结点的单链表进行头指针的更新。带头结点的单链表,无论单链表是否为空链表,头指针都指向头结点。不带头结点的单链表,当单链表为非空链表时,头指针指向链表第一个结点(LNode),当单链表为空链表时,头指针指向空(NULL)。//不带头结点的链表#include<stdio.h>#include<stdlib.h>typedef int Elemtype;原创 2021-08-04 20:51:13 · 1483 阅读 · 0 评论 -
双链表(C/C++)
//双链表#include<stdio.h>#include<stdlib.h>typedef int Elemtype;typedef int Status;typedef struct DNode{ Elemtype data; struct DNode* prior, * next;}DNode, * DLinkList;//初始化双链表Status InitDLinkList(DLinkList& L){ L = (DNode*)mal原创 2021-08-05 17:30:03 · 133 阅读 · 0 评论 -
循环链表&&静态链表(C/C++)
循环单链表//循环单链表(带头结点) Circular singly linked list#include<stdio.h>#include<stdlib.h>typedef int Elemtype;typedef int Status;typedef struct CSLNode{ Elemtype data; struct CSLNode* next;}CSLNode, * CSLinkList;//初始化一个循环单链表Status InitCS原创 2021-08-07 21:45:34 · 165 阅读 · 0 评论 -
顺序栈(C/C++)
文章目录1.定义栈的结构2.栈的初始化3.判断栈空4.入栈5.出栈6.读栈顶全部代码1.定义栈的结构typedef struct{ ElemType data[Maxsize]; //静态数组存放栈中元素 int top; //栈顶指针}SqStack;2.栈的初始化/*初始化栈*/void InitStack(SqStack& S){ for (int i = 0; i < Maxsize; i++) S.data[i] = 0; S.top = -1; //初原创 2021-08-14 17:35:29 · 345 阅读 · 0 评论 -
共享栈(C/C++)
文章目录1.共享栈的定义2.初始化共享栈全部代码1.共享栈的定义typedef struct{ ElemType data[Maxsize]; //静态数组存放栈中元素 int ltop; //栈顶指针(指向栈的底部) int htop; //栈顶指针(指向栈的顶部)}ShStack;2.初始化共享栈/*初始化共享栈*/void InitStack(ShStack& S){ for (int i = 0; i < Maxsize; i++) S.data[i] =原创 2021-08-14 17:58:10 · 705 阅读 · 0 评论 -
链栈(不带头结点)(C/C++)
文章目录0.链栈的数据结构定义1.链栈的初始化2.进栈3.出栈4.读取栈顶元素5.判空全部代码0.链栈的数据结构定义/*0.链栈的数据结构定义*/typedef struct LinkNode { ElemType data; struct LinkNode* next;}LinkNode, * LinkStack;1.链栈的初始化/*1.链栈的初始化*/void InitStack(LinkStack& S){ S = NULL; //将头指针指向NULL}2.进栈原创 2021-08-15 14:55:30 · 1344 阅读 · 0 评论 -
链栈(带头结点)(C/C++)
文章目录0.链栈的数据结构定义1.链栈的初始化2.进栈3.出栈4.读取栈顶元素5.判空全部代码0.链栈的数据结构定义/*0.链栈的数据结构定义*/typedef struct LinkNode { ElemType data; struct LinkNode* next;}LinkNode, * LinkStack;1.链栈的初始化/*1.链栈的初始化*/Status InitStack(LinkStack& S){ S = (LinkStack)malloc(sizeof原创 2021-08-15 16:15:18 · 568 阅读 · 1 评论 -
顺序队列(C/C++)
文章目录一般队列0.定义队列的基本结构1.初始化队列2.判断队列空3.入队4.出队顺序队列的完整代码循环队列0.定义循环队列的基本结构1.初始化队列2.判断队列空3.入队4.出队循环队列的完整代码一般队列0.定义队列的基本结构/*0.定义队列的基本结构*/typedef struct { ElemType data[Maxsize]; //用静态数组存放队列元素 int front, rear; //队头指针与队尾指针}SqQueue;1.初始化队列/*1.初始化队列*/void In原创 2021-08-18 20:37:26 · 1166 阅读 · 0 评论 -
链式队列(带头结点)(C/C++)
文章目录0.定义链式队列的基本结构1.初始化链式队列2.判断队列是为空3.入队4.出队完整代码0.定义链式队列的基本结构/*0.定义链式队列的基本结构*/typedef struct LinkNode { //链式队列结点 ElemType data; struct LinkNode* next;}LinkNode;typedef struct { //链式队列 LinkNode* front, * rear; //队列的队头和队尾指针}LinkQueue;1.初始化链式队列/*1原创 2021-08-19 16:23:02 · 529 阅读 · 0 评论 -
链式队列(不带头结点 )(C/C++)
文章目录0.定义链式队列的基本结构1.初始化链式队列(不带头结点)2.判断队列是为空(不带头结点)3.入队(不带头结点)4.出队(不带头结点)完整代码0.定义链式队列的基本结构/*0.定义链式队列的基本结构*/typedef struct LinkNode { //链式队列结点 ElemType data; struct LinkNode* next;}LinkNode;typedef struct { //链式队列 LinkNode* front, * rear; //队列的队头和队尾指原创 2021-08-19 16:28:24 · 2144 阅读 · 0 评论