自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 c创建cmake项目步骤

1.2.

2025-03-13 19:10:05 139

原创 CMake的CMakeLists.txt和tasks.json模板

【代码】CMake的CMakeLists.txt和tasks.json模板。

2025-03-13 19:01:01 147

原创 多线程和线程同步 生产消费者模型

生产者可以在缓冲区满时等待条件变量,消费者可以在缓冲区空时等待条件变量。缓冲区 :生产者和消费者之间共享的存储区域。消费者 :负责处理或消费数据的线程或进程。消费者从共享的缓冲区或队列中取出数据进行处理。生产者和消费者需要同步,以确保生产者在缓冲区满时停止生产,消费者在缓冲区空时停止消费。互斥锁(Mutex):用于保护对缓冲区的访问,确保同一时间只有一个线程可以访问缓冲区。生产者 :负责生成数据或任务的线程或进程。生产者和消费者在访问缓冲区时需要互斥,以避免数据竞争。

2024-12-03 22:47:54 137

原创 算法题跳台阶

继续优化空间,f2是从上往下递归的然后再从下往上回溯的,最后回溯的时候来合并子树从而求得答案 f3的是,不用递归的过程,直接从子树求得答案。计算f[5]的时候只用到了f[4]和f[3], 没有用到f[2]...f[0],所以保存f[2]..f[0]是浪费了空间。要求:时间复杂度:O(n)O(n) ,空间复杂度: O(1)O(1)时间复杂度:O(2^n) 空间复杂度:递归调用栈O(n)时间复杂度:O(n) 没有重复计算 空间复杂度: O(n)时间复杂度:O(n) 空间复杂度O(1)

2024-12-03 14:46:59 187

原创 C++ 线程池的实现(学习笔记)

线程池是一种常用的一种并发编程技术,主要用于管理和复用线程,以提高多线程应用程序的性能和资源利用效率。线程池是一组预先创建的线程,这些线程在应用程序的生命周期内保持活动状态,当应用需要执行任务时可以将任务提交到线程池中,线程池会自动选择一个空闲的线程来执行该任务,线程池主要目的时减少创建和销毁线程的开销,从而提高系统的响应速度和资源利用率。

2024-12-02 21:56:20 239

原创 tcp网络通讯socket套接字

【代码】tcp网络通讯socket套接字。

2024-10-16 22:01:16 368 2

原创 【学习笔记】数据结构 第六章 排序

插入排序原理是通过构建有序序列,对未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。(类似于在摸牌时调整手上牌的顺序)。代码来源:B站up主码农论坛插入排序优化:插入排序存在两个不足:1.寻找插入位置2.移动元素优化方案1.对已排好序的序列,采用二分查找法2.携带多个元素(一般只插一个可以携带多个,在合适的位置插入)3.数据链表化4.希尔排序。

2024-08-02 00:57:25 1434

原创 【学习笔记】 数据结构 第五章 查找

是指在查找过程中,数据集合在查找之前是固定不变的,也就是说,查找过程中数据不发生增删改操作。静态查找通常采用静态数据结构,如数组或有序数组,通过某些查找算法(例如二分查找)来进行查找。则是指在查找过程中,数据集合可以随时发生增删改操作。动态查找通常采用动态数据结构,比如链表、平衡树、哈希表等,以支持在运行时对数据的操作。如果数据量固定,并且频繁查找,则选择静态查找更为合适。如果数据变化频繁,且查找操作不占主导,则动态查找更加灵活。

2024-08-01 23:37:02 867

原创 【学习笔记】数据结构 第四章 图

图 是由顶点(图中的节点被称为图的顶点)的非空有限集合v与边的集合E(顶点之间的关系)构成的。若图G中的每一条边都没有方向,则称G为无向图若图G中的每一条边都有防线,则称G为有向图。

2024-07-23 22:07:23 1570

原创 【学习笔记】数据结构 第三章 树和二叉树

1.指树的深度2.树的大小(集合节点个数)

2024-07-20 00:52:51 650

原创 【学习笔记】数据结构 第二章 线性表

静态存储分配,编译时确定容量 ,用一段地址连续的存储单元依次存储线性表的数据,逻辑关系通过存储位置来实现动态存储分配,运行时分配空间,用一组任意的存储单元存放线性表的数据元素,用指针来反应数据元素之间的逻辑关系。2.插入和删除操作相对复杂,要移动大量元素。3.占用连续内存空间,大小固定,诺空间不足要扩容。4.适合元素数量固定 或 较少的场景如:静态数据 或 需要随机访问的情况。特点:1.元素在内存中不连续,每个节点除了存储的数据外还要存:指向下一个节点的指针。

2024-07-17 23:50:33 1778

原创 【学习笔记】数据结构 第一章

数据结构指的是:组织和存储数据的方式,以便于访问和修改。不同的数据结构在不同的应用场景中具有各自的优势和特点,程序员要选择合适的数据结构提高程序的效率和性能。

2024-07-17 17:52:41 256

空空如也

空空如也

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

TA关注的人

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