ADT数据结构实现
c++ template class
XNB's Not a Beginner
[算法 | 现代C++ | 数据结构实现 | 有趣的Coding魔法]
展开
-
【二叉树的中序线索化】
【代码】【二叉树的中序线索化】原创 2024-03-19 19:40:55 · 94 阅读 · 0 评论 -
【线段树的可持久化】(主席树 | 历史记录 | 版本回溯)
【代码】【线段树的可持久化】(主席树 | 历史记录 | 版本回溯)原创 2024-03-19 19:35:42 · 211 阅读 · 0 评论 -
【函数缓存 | 记忆化技术】(类型萃取 | 延迟计算 | hash | 计算优化 | 函数式编程 | 模板元编程)
这样,当相同的查询再次发生时,可以直接从缓存中获取结果,而无需再次访问数据库。这样,当相同的请求再次发生时,可以直接返回缓存中的结果,避免了不必要的网络延迟和开销。模板类,然后通过特化这个模板类,将返回类型和参数类型作为模板参数,从而能够获取函数的类型、返回值和参数的个数。,我们可以以一种统一的方式处理这些不同类型的函数对象,而无需针对每种类型编写特定的代码。,可以将之前计算过的结果缓存起来,以便在需要时快速重用,从而提高渲染速度和游戏性能。因此,可以使用记忆化来缓存推理结果,从而加速模型的响应速度。原创 2024-03-09 16:46:28 · 1197 阅读 · 0 评论 -
【线段树的简单封装】
【代码】【线段树的简单封装】原创 2024-03-07 19:40:16 · 374 阅读 · 0 评论 -
【算法随笔:线段树 Segment tree】(多操作 | leetcode例题)
分析线段树,并且一般在算法题中出现。线段树线段树具有,当然动态树也可以,改天更新线段树处理非常强大,很少有别的数据结构能与之媲美线段树进阶操作还有等,这些扩展持续学习中,改日更新DSA模板(静态数组、侵入式)线段树经典应用。原创 2024-03-04 21:08:37 · 756 阅读 · 1 评论 -
【树状数组 | 简单实现】(单点修改 | 区间查询)
【代码】【树状数组 | 简单实现】(单点修改 | 区间查询)原创 2024-03-03 18:28:21 · 388 阅读 · 1 评论 -
【400行 手搓trie树】(ModernCpp | KMP & AC后缀机 | 模糊匹配 | 词频分析 | 相似度分析 | 串排序 ...)
这里Node是一个嵌套在class trie定义内的struct类型,表示trie树上的节点。原创 2024-02-24 22:18:43 · 1227 阅读 · 1 评论 -
【链表 快速排序】
链表不适合写快速排序,但是也可以写。原创 2024-02-19 07:33:32 · 392 阅读 · 1 评论 -
【链表 归并排序】(C++ OOP | templateADP | 递归)
代码不长,值得注意的点很多。已经做了测试,可以拷下来在本地跑一下。原创 2024-02-18 14:52:42 · 438 阅读 · 1 评论 -
【四叉树】(boolean矩阵划分树 | 多路树 | RAII | 深拷贝)
【代码】【四叉树】(boolean矩阵划分树 | 多路树 | RAII | 深拷贝)原创 2024-02-16 06:16:25 · 467 阅读 · 2 评论 -
【维护中位数的工具类 MedianHolder】(对顶堆 | templateADT | 批处理)
【代码】【中位数维护的工具类 MedianHolder】(对顶堆 | templateADT | 形参包 初始化列表扩展)原创 2024-02-15 00:18:51 · 499 阅读 · 1 评论 -
【LRU Cache】(Least recently used | template ADT| list + double hash)
【代码】【LRU Cache】(Least recently used | template ADT| list + double hash)原创 2024-02-14 20:12:24 · 335 阅读 · 1 评论 -
【LFU Cache】(least frequency usage | ADT | min-heap + double hashtable)
模拟CPU根据主存地址,向高速缓冲的读操作。包含90%的写操作,和10%的读操作。以及DMA或主存向缓冲的写操作。最终计算命中率和读写总次数。原创 2024-02-14 00:32:07 · 464 阅读 · 1 评论 -
[FIFO Cache实现】( List + hashtable | template | LRU )
【代码】【LRU Cache实现】( List + hashtable | template | LRU )原创 2024-02-11 20:34:46 · 515 阅读 · 1 评论 -
【红黑树】(仿STL map | 暂时只写了插入)
【代码】【红黑树】(仿STL map | 暂时只写了插入)原创 2024-02-13 02:17:13 · 552 阅读 · 2 评论 -
【unique_ptr的简易实现】
标准库的源码有一千来行,我就写个80几行的缩水版好了。原创 2024-02-13 02:09:59 · 679 阅读 · 1 评论 -
【std::reference_wrapper简单实现】
【代码】【std::reference_wrapper简单实现】原创 2024-02-07 15:40:05 · 335 阅读 · 1 评论 -
【TRIE字典树实现:400行】(模糊匹配 | AC自动机 | 多模式匹配 | 串排序 | 词频计数 | 相似度分析 | RAII模式 | 前缀比较 )
取代传统的pair< return_type, bool > 检索返回类型。范围库相关标准设施在代码简化的重要作用。中智能指针所有权的转交。使得代码较大程度复用。原创 2024-02-08 00:23:10 · 1384 阅读 · 2 评论 -
二叉搜索树 类模板(BST | Template)
【代码】二叉搜索树 类模板(BST | Template)原创 2023-12-18 15:47:31 · 319 阅读 · 2 评论 -
AVL树 (旋转平衡树 | BST | 可持久化结构 | 结构化编程)
typedef_s;}node;原创 2023-12-18 14:24:42 · 385 阅读 · 2 评论 -
差分树状数组(树上差分 | 单点查询 | 区间修改 )
【代码】差分树状数组(树上差分 | 单点查询 | 区间修改 )原创 2023-12-18 21:18:33 · 391 阅读 · 0 评论 -
haffman哈夫曼编码(前缀码 | 最优树 | 压缩码率)
【代码】haffman哈夫曼编码(前缀码 | 最优树 | 压缩码率)原创 2023-12-18 15:43:48 · 380 阅读 · 3 评论 -
线段树 (多套件 | 区间维护 | 二分 | 可持久化 )
【代码】线段树 (多套件 | 区间维护 | 二分 | 可持久化 )原创 2023-12-18 21:00:18 · 328 阅读 · 1 评论 -
变形并查集 (扩展域并查集 | 权值并查集)
【代码】变形并查集 (扩展域并查集 | 权值并查集)原创 2023-12-18 21:08:35 · 311 阅读 · 0 评论 -
树状数组 (前缀和维护 | 区间查询 | 单点修改 )
【代码】树状数组 (前缀和维护 | 区间查询 | 单点修改 )原创 2023-12-18 20:58:47 · 355 阅读 · 1 评论 -
循环队列模板类(支持动态扩展 | 仿std::vector::resize 静态扩展)
【代码】循环队列模板类(支持动态扩展 | 仿std::vector::resize 静态扩展)原创 2024-01-12 00:36:48 · 329 阅读 · 0 评论 -
双向顺序栈(内存压缩优化)
【代码】双向顺序栈(内存压缩优化)原创 2024-01-12 00:44:33 · 349 阅读 · 0 评论 -
【栈】(ADT | 顺序实现 + 链表实现)
【代码】【栈】(ADT | 顺序实现 + 链表实现)原创 2024-01-12 00:40:49 · 341 阅读 · 0 评论 -
链表队列模板类
【代码】链表队列模板类。原创 2024-01-12 00:37:44 · 306 阅读 · 0 评论 -
循环链表模板类
【代码】循环链表模板类。原创 2024-01-12 00:35:00 · 314 阅读 · 0 评论 -
三元组结构体数组表示二叉树 | 静态链表
【代码】三元组结构体数组表示二叉树 | 静态链表。原创 2024-01-12 00:50:13 · 350 阅读 · 0 评论 -
【表达式树】( 二叉树 | 逆波兰式 | RAII模式 | 工厂模式 | 解析器模式 | 运行时多态 )
【代码】【表达式树】( 二叉树 | 逆波兰式 | RAII模式 | 工厂模式 | 解析器模式 | 运行时多态 )原创 2024-01-30 16:11:29 · 449 阅读 · 1 评论 -
带头节点 循环单向链表 模板类
【代码】带头节点 循环单向链表 模板类。原创 2024-01-22 21:44:39 · 388 阅读 · 0 评论 -
【仿STL实现变长数组】( Iterator | Allocator | 动态扩容)
【代码】【仿STL实现变长数组】( Iterator | Allocator | 动态扩容)原创 2024-01-22 21:38:40 · 413 阅读 · 1 评论 -
【所有特殊矩阵 :ADT模板类封装】( 稀疏矩阵 | 三角矩阵 | 三对角矩阵 | 十字矩阵 )
for(i = 0;++i)if(!if(!for(i = 0;++i)if(!return!return os;--position;++position;return tmp;--position;return tmp;原创 2024-01-22 22:10:59 · 458 阅读 · 0 评论 -
【二维矩阵类】(template ADT | operator重载 | 行主映射描述 )
【代码】【二维矩阵类】(template ADT | operator重载 | 行主映射描述 )原创 2024-01-22 21:43:10 · 336 阅读 · 0 评论 -
【仿std::list 实现单链表 】( Allocator | Iterator | 重载运算符)
【代码】【仿std::list 实现单链表 】( Allocator | Iterator | 重载运算符)原创 2024-01-22 21:40:19 · 429 阅读 · 0 评论 -
【单例 & 定长 & 优先 & 动态线程池】 ( C++11 | 拒绝策略 | 动态任务分配 | 单例设计模式 )
task;原创 2024-01-16 23:36:00 · 500 阅读 · 1 评论 -
【c++11 std::array 简单实现】
【代码】【c++11 std::array 简单实现】原创 2024-02-04 19:51:08 · 707 阅读 · 1 评论 -
【trie 字典树】( RAII | Multiset频次统计 | STL )
【代码】【trie 字典树】( RAII | Multiset频次统计 | STL )原创 2024-02-06 18:00:27 · 618 阅读 · 2 评论