随笔分类 - 数据结构与算法
摘要:# 1.队列的概念 ## 1.1队列的定义 **队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。** 队列是一种先进先出(First In First Out)的线性表,简称FIFO。允许插入的一端称为队尾,允许删除的一端称为队头。  ▷ 树的定义: 由一个或多个(n≥0)结点组成的有限集合T,有且仅有一个结点称为根(root
阅读全文
摘要:栈的应用案例(就近匹配).c ```C++ #define _CRT_SECURE_NO_WARNINGS #include #include #include #include "seqStack.h" /* 从第一个字符开始扫描 当遇见普通字符时忽略, 当遇见左括号时压入栈中 当遇见右括号时从栈
阅读全文
摘要:```C++ #define _CRT_SECURE_NO_WARNINGS #include #include #include //节点结构体 struct stackNode { struct stackNode * next; }; //栈的结构体 struct LStack { struc
阅读全文
摘要:栈的顺序存储.c ```C++ #define _CRT_SECURE_NO_WARNINGS #include #include #include"seqStack.h" struct Person { char name[64]; int age; }; void test01() { //初始
阅读全文
摘要:```C++ #define _CRT_SECURE_NO_WARNINGS //2023年6月1日14:56:43 #include #include #include //节点结构体 struct LinkNode { //只维护指针域 数据域由用户自己开辟 struct Linknode* n
阅读全文
摘要:# 1.为什么需要链表? 链表是一种灵活的数据结构,它允许在内存中动态地存储和操作元素。以下是一些需要使用链表的原因: 1. 动态数组的缺点:数组的大小是在程序运行时固定的,如果需要添加或删除元素,就需要重新分配内存并复制数据。这会导致大量的内存浪费和性能问题。而链表可以动态地调整大小,只需要增加或
阅读全文
摘要: # 1.动态数组结构 上图所示,该动态数组有3个元素,空间容量是6,每个元素类型为void\*,因为void\*可
阅读全文