![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 61
科协软件2018
这个作者很懒,什么都没留下…
展开
-
数据结构-堆(二叉树的特殊)-第四天
堆是一棵完全二叉树,根据成立条件可分为大顶堆和小顶堆。大(小)顶堆的堆顶元素是最大(小)的。堆(Heap)是一种特殊的完全二叉树数据结构,通常用于实现优先队列。它是一种完全二叉树,除了最后一层外,每一层都是完全填充的。最后一层的所有节点都尽可能地靠左排列。堆中的每个节点的值与其子节点的值之间有一定的关系,这取决于堆的类型。堆是一种高效的数据结构,通常用于实现优先队列和排序算法。原创 2024-08-21 17:54:47 · 97 阅读 · 0 评论 -
数据结构-树(二叉树)-第三天
二叉树(binary tree)是一种非线性数据结构,代表“祖先”与“后代”之间的派生关系,体现了“一分为二”的分治逻辑。与链表类似,二叉树的基本单元是节点,每个节点包含值、左子节点引用和右子节点引用。/* 二叉树节点结构体 */int val;// 节点值// 左子节点指针// 右子节点指针每个节点都有两个引用(指针),分别指向左子节点(left-child node)和右子节点(right-child node),该节点被称为这两个子节点的父节点(parent node)。原创 2024-08-21 16:40:23 · 125 阅读 · 0 评论 -
c++每日练习记录3
【代码】c++每日练习记录3。原创 2024-08-21 05:01:13 · 106 阅读 · 0 评论 -
数据结构-链表-第二天
链表(linked list)是一种线性数据结构,其中的每个元素都是一个节点对象,各个节点通过“引用”相连接。引用记录了下一个节点的内存地址,通过它可以从当前节点访问到下一个节点。int val;// 数据域,存储节点的值// 指针域,指向下一个节点SinglyListNode(int x) : val(x), next(NULL) {} // 构造函数,初始化节点单链表的定义和构造函数的设计是为了方便创建和操作链表。原创 2024-08-21 01:52:15 · 1521 阅读 · 0 评论 -
c++每日练习记录2
当 k < P.length 时,如果 P[k] == P[j+1],则 next[k+1] = j + 1,并且 j = j + 1;部分匹配表 (Next 数组): KMP 算法的核心在于构建一个“部分匹配表”(有时称为 Next 数组),该表记录了模式串中每个前缀的最大相等前后缀的长度,从而可以在不匹配时快速跳过某些比较。i-1] 的最大相等前后缀的长度。= P[j] 且 j > 0,则 j = next[j];如果 T[i] == P[j],则 i = i + 1 和 j = j + 1。原创 2024-08-20 01:26:37 · 158 阅读 · 0 评论 -
c++每日练习记录第1天
【代码】c++每日练习记录第1天。原创 2024-08-19 00:27:14 · 133 阅读 · 0 评论 -
算法-双指针法 c++笔记第一天
双指针法是一种常用的算法技巧,特别适用于处理数组、字符串等线性数据结构中的问题。这种方法通常涉及到两个指针(或索引),它们以某种策略移动,从而简化了问题的解决过程。原创 2024-08-19 00:24:01 · 458 阅读 · 0 评论