自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(72)
  • 资源 (2)
  • 收藏
  • 关注

原创 计算机网络

这种分离的设计是实现并发服务器的基础:服务器可以只有一个监听套接字来持续接受新的连接,同时为每一个已建立的连接创建一个独立的通信套接字(通常交给新的进程或线程处理),从而实现同时服务多个客户端。解析: 这是一个常见陷阱。之后,那个失效的SYN报文终于到达了服务器,服务器会误以为是一个新的连接请求,于是回复SYN-ACK并分配资源等待数据。SYN-ACK:服务器收到后,如果同意连接,则回复一个SYN-ACK包(SYN=1, ACK=1),确认号为ack=x+1,同时自己也随机生成一个序列号seq=y。

2025-09-20 18:22:04 961

原创 C++/操作系统

解析:智能指针的默认删除器使用delete释放内存,因此如果使用malloc分配,则释放方式不匹配,会导致未定义行为。如果非要使用,需要自定义删除器。B:位段通过将多个变量打包到一个存储单元中来节省内存,但访问时需要额外的移位和掩码操作,因此可能增加代码大小和执行时间。解析:A、B、C、D都是正确的。A、B:栈和堆的大小通常在链接时确定(通过链接脚本),但堆的大小有时也可以在运行时调整(例如使用sbrk函数)。D:它不会初始化新分配的内存(除非是扩大时新扩展的部分,但标准并未规定其内容,通常是垃圾值)。

2025-09-20 18:21:23 541 5

原创 两种哈希表的使用 unordered_set和unordered_map

本文介绍在LeetCode刷题时常用的两个基于哈希的数据结构。其可以在O(1)的时间复杂度内存储、查找某些元素,主要用于降低O(n)级别的时间复杂度。

2025-08-26 17:24:25 166

原创 找到字符串中所有字母异位词【滑动窗口】

LeetCode438 找到字符串中的所有字母异位词

2025-08-26 16:05:22 788

原创 字母异位词分组【两种思路】

LeetCode49 字母异位词分组

2025-08-26 12:30:08 389

原创 最大子数组和【栈和分治两种思路】

LeetCode53 最大子数组和

2025-08-25 20:55:27 452

原创 最长连续序列【优于官方题解】

LeetCode128 最长连续序列

2025-08-25 18:10:16 518

原创 移动零【三种思路】

LeetCode283 移动零

2025-08-24 19:01:38 170

原创 判断回文链表【两种O(n)时间复杂度】

LeetCode 234回文链表

2025-07-28 22:14:35 339

原创 计算柱状图中最大的矩形【单调栈】

LeetCode84 柱状图中的最大矩形

2025-07-27 21:49:04 405

原创 排列组合数组获取最大数

LeetCode179 最大数

2025-07-27 09:40:27 244

原创 根据前序、中序构建二叉树【含对递归边界的思考】

LeetCode105,根据前序、中序构建二叉树

2025-07-27 09:23:40 174

原创 岛屿数量问题

LeetCode200

2025-07-12 17:16:15 392

原创 全排列问题

LeetCode46 全排列问题

2025-07-12 15:23:30 340

原创 爬楼梯及其进阶

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?示例 1:输入:n = 2输出:2解释:有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入:n = 3输出:3解释:有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶。

2025-07-09 23:46:05 451

原创 无重叠区间问题

LeetCode无重叠区间问题思路分析

2025-07-08 21:55:14 247

原创 解数独(C++版本)

LeetCode解数独问题

2025-07-07 23:16:19 315

原创 约瑟夫问题

约瑟夫问题的推导解和数学解

2025-07-06 17:51:22 653

原创 3.5 const限定修饰符

魔法数字(Magic Number) 是指在代码中直接使用的没有明确含义的常量数字,它们通常没有解释或说明,因此对代码的可读性、可维护性和可扩展性造成负面影响。例如,下列代码中的“3.14159”即为魔法数字。此外代码中需要使用到的一些人为设置的阈值,也属于魔法数字。例如,代码中“512”意为当前设置的缓存区大小。直接使用魔法数字降低了代码的可读性,也加大了代码的维护难度(比如阈值发生变动时,需要对多处进行手动修改)。令魔法数字等于某个变量可以提高代码的可读性、降低代码的维护难度。但是存在变量可能被无

2024-12-03 11:30:14 397

原创 3.4字符串类型

使用char时,要注意存储单个字符和存储字符串时不同的写法// 使用char存储单个字符// 使用char存储字符串时,需要使用const进行修饰。

2024-12-01 15:10:52 437

原创 3.3 指针类型

指针是一种存储相关类型变量地址的变量,通常由“*”和相关类型组成,比如 * int、* string等。指针主要用来建立特定结构(如:链表、树)、管理在程序的执行过程中动态分配的对象、传递数组或大型的类对象等。

2024-11-29 18:12:34 397 1

原创 Conda环境基础使用方法

conda的一些基础使用方法

2024-01-19 14:19:56 581

原创 Ubuntu下Unable to locate package pip

解决Ubuntu无法安装pip的问题

2023-03-29 15:57:50 368

原创 LPNet for Image Derain

图像去雨论文Lightweight Pyramid Networks for Image Deraining阅读

2023-03-04 20:29:43 1085

原创 关于花旗骰的思考

关于花旗骰中胜率的思考

2023-03-04 20:03:03 11519

原创 Mask掩码

python中mask掩码用法

2023-02-06 17:01:58 2035

原创 C++指针

什么是指针变量一个变量的地址称为该变量的指针。指针变量是一种存储被指向变量地址的特殊变量。指针变量的声明方式:基类型 * 变量名;指针工作方式:指针只存储一个地址,指针的基类型决定了取多少字节的数值,比如int * pint;pint中存储的为内存地址,而int类型决定了取四个字节。指针的赋值:定义时赋值:存储类型(默认auto) 基类型 * 变量名 = 初始地址; 指针变量赋值:指针变量名 = &变量名;指针基础应用指针的声明、赋值与使用#include <iost

2022-04-09 15:11:57 1338 2

原创 Project1

练习

2022-04-08 16:17:29 617

原创 C++利用数组处理数据

数组

2022-04-04 23:58:41 1015

原创 关系数据库

关系数据库

2022-04-04 08:55:47 393

原创 数据库组成

层次模型定义:有且只有一个节点没有双亲结点;除根节点以外的其他节点有且只有一个双亲结点。特点:任何一个给定的记录值只能按其层次路径查看,没有任何子女节点可以脱离双亲结点单独存在。数据操纵:插入、查询、更新和删除。完整性约束:当没有相应的双亲结点值时无法插入;删除双亲结点时,相应的子女结点一并被删除。优点:数据结构比较清晰。查询效率高。提供了两道的完整性支持缺点:现实中有很多联系无法使用层次模型进行描述(如多对多联系)。由于一个结点只能有一个双亲结点,用来描述有多个双亲

2022-04-03 12:07:42 1193

原创 数据库系统概论学习一

数据库基本概念

2022-04-03 10:44:00 1183

原创 数据库学习目录

摘要

2022-04-02 21:12:34 889

原创 C++程序设计初步和函数

C++基于过程的编程

2022-04-02 18:47:44 1098

原创 C++程序设计基础知识学习

C++基础知识

2022-04-01 08:44:51 891

原创 数据结构_35

一、线性表   排序:冒泡排序、选择排序、快速排序、归并排序   查找:二分查找二、树   遍历:递归(前中后序、层次)   排序:大根堆、小根堆   哈夫曼树三、图   广度优先遍历   深度优先遍历   最小生成树:Prim算法、Kus算法   最短路径:Dij算法一、线性表排序算法&nbsp.

2021-11-19 21:44:40 395

原创 数据结构_38

LazyPrim算法思路LazyPrim算法思路:1、选择一个顶点,2、将其所有临边加入3、判断联通分量是否为1联通分量为1—>退出联通分量不为1—>从所有临边中选择一条最小,且能使联通分量减少的边加入。重复2、3。LazyPrim算法伪码:LazyPrimMst(graph *Graph){ marked = new bool[Graph.dot()];//定义顶点访问标记数组 marked = false;//默认顶点均未被访问 Unicoms = Graph.d.

2021-11-17 00:48:14 424

原创 数据结构_43

主要内容: 背包问题 关键路径一、背包问题:   给定空间,给定物品,选取最符合条件的物品。0/1背包完全背包多重背包*二、关键路径   AOV网中完成所有事件需要的最短时间(最长路径)   关键活动所在的路径AOV网:有向带权图;起点:入度为零;终点:出度为零;关键活动:最早开始时间和最晚开始时间一致。...

2021-11-13 01:13:41 297

原创 数据结构学习_44

主要内容:  1. 逆波兰表达式  2. 稀疏矩阵存储方式  3. 平衡二叉树  4. 大根堆/小根堆 构建方式  5. 完全二叉树/满二叉树一、逆波兰表达式   先把一般表达式按中序存储,再按后续遍历输出。   优点在于,后序遍历时方便计算运算。运算时可以对一般表达式进行遍历;遇到数字时,存入栈;遇到操作数时先后从栈顶取出op1和op2,然后执行 “op2操作符op1” 然后讲运算结果存回栈中即可.

2021-11-12 01:41:59 444

原创 二叉树中序非递归遍历Back_Rhythm

1、二叉树中序遍历规则:左子结点,根结点,右子结点2、非递归思路:二叉树中序遍历时会出现父结点的打印顺序在子结点之后的情况。因此,当二叉树使用链表存储时,实现非递归遍历需要用到栈。由于中序遍历的关键点在第一次输出,即树的最左结点。而树的最左结点分两种情况:左根、左叶如果是左根,在输出自己后需要输出右子结点;如果是左叶结点,则需要输出根结点后再遍历右兄弟。/*代码思路:第一步:结点入栈至最左结点;第二步:取出栈顶元素 输出值,将其右子树加入栈顶 此时有两种情况: 1、左叶,此时右子结点为

2021-07-29 16:22:05 272

edk2-BaseTools-win32-master.zip

压缩包无解密码。里面包含的文件是Windows操作系统下使用EDK2配置UEFI开发环境所必需的文件,含有:Cygwin、edk2-BaseTool、edk2-master、iasl、nasm、openssl等文件。虽然这些文件在网上都能找到,但是这个压缩包是直接整理好的,可以配合博客:https://blog.csdn.net/qq_39180804/article/details/106129513一起使用。

2020-05-15

MaxHeap.zip

堆排序全部的头文件和cpp文件,还有对堆排序的两种优化。maxHeap文件是基础的堆排序、indexMaxHeap是索引堆、indexMaxHeapPLUS是增加了反向索引的索引堆。

2020-04-22

空空如也

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

TA关注的人

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