自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(130)
  • 问答 (17)
  • 收藏
  • 关注

原创 RAII的理解

举例来说,为什么要用make_unique()而不是unique(new T*)来构造智能指针实例,就是因为资源的获取与对象的初始化在这里不是“原子”的:先通过new获得资源指针,再将其用来初始化对象。RAII:资源获取即初始化。意思是通过构造函数得到实例时,该实例就已经有了对资源的管理。

2024-08-28 09:57:29 123

原创 openGauss配置vscode编译调试环境

如何编译和安装openGauss请参考官方文档。

2024-07-06 20:18:52 404

原创 设计模式笔记

算法整体流程固定,但每个步骤的实现细节可能不同时,可以将每个步骤设计为虚函数,将这些步骤组合起来作为一个“模板”。

2024-06-10 00:23:58 243

原创 算法设计与分析(2):具体模型和下限

对于某个问题和某个长度。

2024-01-10 14:15:00 1095

原创 算法设计与分析(1):导论和线性时间选择

本系列的目的是简要概述算法主题及其涉及的思维类型:为什么我们专注于我们所做的主题,以及为什么我们强调证明保证。我们会通过一个很容易涉及到的问题示例,即查找n个元素集合的中位数。对于这个问题,有一个简单的Onlogn时间算法,但我们可以使用随机化和巧妙的确定性构造做得更好。这些说明了我们将在本系列中使用(和构建)的一些想法和工具。我们还将练习编写和解决递归关系,这是算法分析的关键工具。

2024-01-09 11:38:46 967

原创 LSM-Tree笔记

假设Level 0为内存中的Buffer,容量为B,层与层之间的条目数量差T倍。

2023-10-08 16:47:32 248 1

原创 openGauss使用笔记

pg_table_size等于pg_relation_size加上其它文件大小,例如fsm文件和可见性映射文件。查看表的物理路径:pg_relation_filepath(oid/table_name)查看关系占用的磁盘大小:pg_relation_size(oid/table_name)

2023-09-09 16:19:50 355

原创 docker使用笔记

安装Dev Containers插件,在远程资源管理中选择“开发容器”,里面就有正在运行的容器,选择打开即可。

2023-08-18 13:53:33 142

原创 索引习题记录

【代码】索引习题记录。

2023-07-14 11:22:15 289

原创 数据存储结构习题记录

σa1​R⋈σb2​S)πa​R∪πb​S。

2023-07-08 15:26:06 359

原创 C++ I/O

所有语言都提供某种 I/O 机制,或者作为语言的内置部分,或者通过特定于操作系统的 API。灵活的I/O系统支持通过各种设备(例如文件和用户控制台)进行输入和输出。此外,它们不够灵活,无法处理自定义数据类型,它们不是类型安全的,并且在像 C++ 这样的面向对象语言中,它们根本不是面向对象的。的机制提供了一种更精细的输入和输出方法。的格式说明符和占位符,可以将它们自定义为读取特殊格式的数据或输出格式化代码允许的任何值。该库允许你使用路径、目录和文件,并且它很好地补充了流为 I/O 提供的机制。

2023-07-02 17:40:04 289

原创 C++泛型编程

当编译器遇到模板的实例化时,例如 Grid,它会通过将类模板定义中的每个 T 替换为 int 来为 Grid 模板的 int 版本编写代码。当编译器遇到模板的不同实例化时,例如 Grid,它会为 SpreadsheetCells 编写另一个版本的 Grid 类。如果语言中没有模板支持并且必须为每种元素类型编写单独的类,编译器只会编写你将要编写的代码。这里没有魔法;模板只会自动执行一个烦人的过程。如果不为程序中的任何类型实例化类模板,则永远不会编译类方法定义。

2023-06-08 01:00:14 591

原创 C++继承技术

只有在基类中声明为的方法才能被派生类正确覆盖。

2023-05-24 01:10:21 498

原创 C++类进阶

从 C++17 开始,可以将静态数据成员声明为内联。这样做的好处是不必在源文件中为它们分配空间。

2023-05-20 01:16:51 670

原创 C++类与对象之移动语义

对象的移动语义需要移动构造函数和移动赋值运算符。当源对象是将在操作完成后销毁的临时对象时,编译器可以使用它们,或者正如你将看到的,在使用 std::move() 时显式使用。移动将内存和其他资源的所有权从一个对象移动到另一个对象。它基本上对数据成员进行浅复制,并切换已分配内存和其他资源的所有权,以防止悬空指针或资源并防止内存泄漏。移动构造函数和移动赋值运算符都将数据成员从源对象移动到新对象,使源对象处于某种有效但不确定的状态。通常,源对象的数据成员被重置为空值,但这不是必需的。

2023-05-11 11:25:49 487

原创 C++的CRTP

在上面的示例中,尽管函数 Base::interface() 在编译器已知结构 Derived 存在之前声明(即,在声明 Derived 之前),但实际上并没有被编译器实例化,直到它实际上由 Derived 声明之后出现的一些后续代码调用(上例中未显示),因此在实例化函数“implementation”时,Derived::implementation() 的声明是已知的。如果派生类调用一个继承函数,然后调用另一个成员函数,那么该函数将永远不会调用派生类中的任何派生或重写成员函数。

2023-05-09 10:17:03 120

翻译 如何阅读工程研究论文

论文的主体部分详细说明作者对问题的解决方案,还应该从论证或实验的角度描述对解决方案的详细评估。此外,写论文的原因可能与论文被分配的原因不同,这意味着你必须更加努力地寻找你感兴趣的内容。最后,你的时间非常有限,所以你可能没有时间阅读论文的每一个字,或者读几遍以提取所有的细微差别。如果你发现填写这个表格对你不起作用,你可以试着写一个250字的论文摘要–不是重写论文前面的摘要,而是你的摘要,从你的角度捕捉到上述五个问题。一篇注释良好的论文是物有所值的,因为它不仅包含了论文的内容,还包含了你对其价值的评估。

2023-04-16 11:02:17 82

原创 强化学习笔记

强化学习记录。

2023-03-07 01:23:27 212

原创 规范哈夫曼编码和Deflate算法

哈夫曼编码优化。

2023-03-02 16:57:24 458

原创 【亚线性时间算法】第二节——估计 MST 权重

在本节中,我们研究图论中的两个基本问题:找出最小生成树 (MST) 和计算图的平均度。

2023-02-28 19:19:30 492

原创 【亚线性时间算法】第一节——Overview

介绍了亚线性时间算法,以及通过对点集直径的估计算法来举例。

2023-02-28 15:19:28 450

原创 LSM-Tree 笔记

LSM-Tree 学习记录。

2023-02-01 13:48:42 194

原创 InfluxDB 笔记

InfluxDB 学习记录,包括时序数据相关概念和源码学习笔记。

2023-01-19 11:26:52 1376

原创 unwrap和?

对unwrap和?的使用总结。

2023-01-04 09:16:14 138

原创 【4.4BSD源码阅读】Local Filestores

4.4BSD源码解读。

2022-12-16 01:35:10 702

原创 pytorch中的scatter

zjwasdgasd fgsd

2022-11-23 20:38:05 116

原创 【操作系统笔记】并发,锁实现以及原子指令

介绍了操作系统中的同步,锁的几种实现方式以及原子指令。

2022-11-21 23:14:46 613

原创 引用失效记录

暂无简介啊啊啊。

2022-10-30 22:53:04 96

原创 R 语言读写文件

记录R语言I/O操作。

2022-09-05 22:55:22 631

翻译 如何阅读论文

无无无无

2022-08-07 11:27:34 316

原创 C++内存管理之智能指针

智能指针随笔。

2022-08-05 00:07:52 426

原创 B-Tree vs LSM-Tree

aslfjsfd

2022-07-14 15:48:14 233

原创 Linux进程

进程描述。

2022-06-30 23:08:14 227

原创 Project0:小游戏

cs162项目0

2022-06-28 23:26:56 973

原创 Git 学习笔记

Git 笔记

2022-06-25 23:08:49 174

原创 Linux内存寻址

介绍Linux的寻址原理。

2022-06-24 13:50:10 837 1

原创 C++流可以作为条件判断的原因

C++ IO库随笔。

2022-06-18 13:56:10 285

原创 网络流问题

网络流算法。

2022-06-15 11:48:15 994

原创 C++并行编程、锁笔记

C++锁笔记

2022-06-06 14:08:33 215

原创 《data compression》笔记

第三章信息熵仅仅从整个数据集符号的静态频率统计上考虑,把符号看作是孤立的个体,而忽视了符号之间的顺序(普遍联系),这使得将数据压缩到超越信息熵的限制成为可能。(马哲yyds)

2022-05-20 00:00:46 112

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除