数据结构与算法
文章平均质量分 81
数据结构十大经典排序算法--python版和C++版;
求职面试的经典算法题;
胡乱儿起个名
工作记录.......
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一文搞定C/C++ 技术面试基础知识总结
宏定义 #defineconst 常量宏定义,相当于字符替换常量声明预处理器处理编译器处理无类型安全检查有类型安全检查不分配内存要分配内存存储在代码段存储在数据段可通过#undef取消不可取消如何定义一个只能在堆上(栈上)生成对象的类?原创 2025-05-07 19:47:07 · 2255 阅读 · 0 评论 -
C++的常用容器嵌套
在 C++ 中,数据结构之间的嵌套是非常常见的,尤其是在处理复杂数据时。这些嵌套方式可以根据实际需求灵活组合,用于处理复杂的数据结构。如果还有其他问题,请随时提问!原创 2025-03-21 21:02:56 · 1182 阅读 · 0 评论 -
C++ 中遍历 std::map
在 C++ 中遍历std::map。原创 2025-03-31 18:03:06 · 1316 阅读 · 0 评论 -
vector最全总结
/重新指定容器的长度为num,若容器变长,则以默认值填充新位置。 //如果容器变短,则末尾超出容器长度的元素被删除。总结: vector赋值方式比较简单,使用operator=,或者assign都可以。//返回容器中元素的个数。//判断容器是否为空。 //如果容器变短,则末尾超出容器长度的元素被删除。//重新指定容器的长度为num,若容器变长,则以elem值填充新位置。总结:swap可以使两个容器互换,可以达到实用的收缩内存效果。原创 2025-03-12 18:44:46 · 865 阅读 · 0 评论 -
C++的map详解
是 C++ 标准库中的一个关联容器,用于存储键值对(key-value pairs),并根据键(key)自动排序。它基于红黑树(一种平衡二叉搜索树)实现,具有高效的查找、插入和删除操作。以下是 的详细解释:定义:存储内容:排序:性能:原创 2025-03-22 10:00:00 · 603 阅读 · 0 评论 -
C++的pair详解
是 C++ 标准库中的一个模板类,用于将两个值组合成一个单一的对象。它通常用于需要返回两个值的函数,或者作为其他容器的元素类型(例如 的键值对)。以下是 的详细用法:定义:成员:用途:输出:2.2 使用 是一个辅助函数,用于创建 对象。输出:2.3 列表初始化(C++11 及以上)输出:3. 访问成员使用 和 访问 的两个值。输出:4. 修改成员可以直接修改 的 和 成员。输出:5. 比较操作 支持比较操作(, , , ,原创 2025-03-22 10:00:00 · 1134 阅读 · 0 评论 -
《deque:双端进出的艺术》
//如果容器变短,则末尾超出容器长度的元素被删除。//重新指定容器的长度为num,若容器变长,则以默认值填充新位置。//删除pos位置的数据,返回下一个数据的位置。//删除[beg,end)区间的数据,返回下一个数据的位置。//重新指定容器的长度为num,若容器变长,则以elem值填充新位置。//在pos位置插入一个elem元素的拷贝,返回新数据的位置。//清空容器的所有数据。//在pos位置插入[beg,end)区间的数据,无返回值。原创 2025-03-17 18:04:18 · 704 阅读 · 0 评论 -
力扣题目总结——链表篇
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点。给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。给你一个单链表的头节点 head ,请你判断该链表是否为。新链表是通过拼接给定的两个链表的所有节点组成的。给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照。给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。原创 2025-03-04 10:55:12 · 1200 阅读 · 0 评论 -
算法复杂度
算法复杂度旨在计算在输入数据量N的情况下,算法的「时间使用」和「空间使用」情况;体现算法运行使用的时间和空间随「数据大小 N」而增大的速度。时间: 假设各操作的运行时间为固定常数,统计算法运行的「计算操作的数量」 ,以代表算法运行所需时间;根据输入数据的特点,时间复杂度具有「最差」、「平均」、「最佳」三种情况,分别使用。「输入数据大小 N 」指算法处理的输入数据量;时,算法运行所使用的「暂存空间」+「输出空间」的总体大小。空间: 统计在最差情况下,算法运行所需使用的「最大空间」;,判断此数组中是否有数字。原创 2025-01-08 20:18:16 · 1043 阅读 · 0 评论 -
链表、栈、队列、树
树是一种非线性数据结构,根据子节点数量可分为 「二叉树」 和 「多叉树」,最顶层的节点称为「根节点 root」。以二叉树为例,每个节点包含三个成员变量:「值 val」、「左子节点 left」、「右子节点 right」。链表以节点为单位,每个元素都是一个独立对象,在内存空间的存储是非连续的。链表的节点对象具有两个成员变量:「值 val」,「后继节点引用 next」。栈是一种具有 「先入后出」 特点的抽象数据结构,可使用数组或链表实现。队列是一种具有 「先入先出」 特点的抽象数据结构,可使用链表实现。原创 2025-01-08 19:58:26 · 677 阅读 · 0 评论
分享