摘要: 1. 前言 树是一种很重要的数据结构,最初对数据结构的定义就是指对树和图的研究,后来才广义化了数据结构这个概念。从而可看出树和图在数结构这一研究领域的重要性。 树和图重要的原因是,它让计算机能建模出现实世界中更多领域里错综复杂的信息关系,让计算机服务这些领域成为可能。 本文将和大家聊聊树的基本概念, 阅读全文
posted @ 2022-10-25 08:47 一枚大果壳 阅读(504) 评论(0) 推荐(0) 编辑
摘要: 1. 前言 队列和栈一样,都是受限的数据结构。 队列遵循先进先出的存储原则,类似于一根水管,水从一端进入,再从另一端出去。进入的一端称为队尾,出去的一端称为队头。 队列有 2 个常规操作: 入队:进入队列,数据总是从队尾进入队列。 出队:从队列中取出数据,数据总是从队头出来。 本文将先从STL的队列 阅读全文
posted @ 2022-10-14 09:24 一枚大果壳 阅读(515) 评论(0) 推荐(0) 编辑
摘要: 1. 前言 表达式求值对于有知识积累的你而言,可以通过认知,按运算符的优先级进行先后运算。 但对计算机而言,表达式仅是一串普通的信息而已,需要通过编码的方式告诉计算机运算法则,这个过程中栈起到了至关重要的作用。 表达式由 2 部分组成: 操作数。 运算符。 在一个复杂的表达式中,操作数和运算符可以有 阅读全文
posted @ 2022-10-13 08:36 一枚大果壳 阅读(2050) 评论(1) 推荐(2) 编辑
摘要: C++ 栈和迷宫问题 1. 前言 栈是一种受限的数据结构,要求在存储数据时遵循先进后出(Last In First Out)的原则。可以把栈看成只有一个口子的桶子,进和出都是走的这个口子(也称为栈顶),封闭的另一端称为栈底。 什么时候会用到栈? 现实世界里,类似于栈的存储现象很普通。 当我们需要同时 阅读全文
posted @ 2022-10-10 13:11 一枚大果壳 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 1. 初识 STL 什么是STL? STL(Standard Template Library) 是C++以模板形式提供的一套标准库,提供了很多开发过程需要的通用功能模块。使用 STL ,可以让开发者将主要精力用于解决程序的高级业务逻辑,而无须关心底层的基础逻辑调用。 STL 由 6 大部分组成: 阅读全文
posted @ 2022-09-28 09:52 一枚大果壳 阅读(606) 评论(0) 推荐(4) 编辑
摘要: C++ "链链"不忘@必有回响之双向链表 1. 前言 写过一篇与单链表相关的博文(https://blog.51cto.com/gkcode/5681771),实际应用中,双向循环链表的功能更强大。 单链表中,查询一个已知结点的后驱结点的时间复杂度为O(1)。因结点本身不存储与前驱结点相关的地址信息 阅读全文
posted @ 2022-09-23 08:40 一枚大果壳 阅读(352) 评论(1) 推荐(0) 编辑
摘要: 1. 前言 数组和链表是数据结构的基石,是逻辑上可描述、物理结构真实存在的具体数据结构。其它的数据结构往往在此基础上赋予不同的数据操作语义,如栈先进后出,队列先进先出…… 数组中的所有数据存储在一片连续的内存区域;链表的数据以结点形式存储,结点分散在内存的不同位置,结点之间通过保存彼此的地址从而知道 阅读全文
posted @ 2022-09-16 09:49 一枚大果壳 阅读(326) 评论(0) 推荐(1) 编辑
摘要: 1. 前言 什么是函数模板? 理解什么是函数模板,须先搞清楚为什么需要函数模板。 如果现在有一个需求,要求编写一个求 2 个数字中最小数字的函数,这 2 个数字可以是 int类型,可以是 float 类型,可以是所有可以进行比较的数据类型…… 常规编写方案:针对不同的数据类型编写不同的函数。 #in 阅读全文
posted @ 2022-09-06 14:08 一枚大果壳 阅读(403) 评论(0) 推荐(2) 编辑
摘要: 1. 前言 程序中的数据总是在流动着,既然是流动就会有方向。数据从程序的外部流到程序内部,称为输入;数据从程序内部流到外部称为输出。 C++提供有相应的API实现程序和外部数据之间的交互,统称这类API为 IO 流API。 流是一个形象概念,数据从一端传递到另一端时,类似于水一样在流动,只是流动的不 阅读全文
posted @ 2022-08-29 10:50 一枚大果壳 阅读(488) 评论(0) 推荐(1) 编辑
摘要: 1. 前言 随着计算机向着不同领域的延伸,数据的概念已经不仅局限于数值型数据,计算机需要处理大量的非数值、且复杂的类型数据。 为了能抽象地描述这些非数值、复杂类型的数据,C++引入了复合数据类型的概念。 C++数据类型分基本(原生)数据类型和复合数据类型,结构体就是一种复合数据类型。可认为复合数据类 阅读全文
posted @ 2022-08-22 12:51 一枚大果壳 阅读(636) 评论(1) 推荐(0) 编辑