- 博客(183)
- 收藏
- 关注
原创 【C++11】引用折叠原理
C++ 中不允许直接定义 “引用的引用”(如 是非法的),但模板推导、auto 推导等场景会间接产生 “引用叠加”,此时编译器会按以下规则自动 “折叠” 为单一引用:只要叠加的引用中有「左值引用()」,最终结果就是左值引用没有引用折叠,模板推导中会出现 “引用的引用” 这种非法语法,导致万能引用()和完美转发无法实现。无引用折叠会报错:此时模板推导后, 被推导为 ,形参 的类型本应是 (引用的引用),但引用折叠规则会将其折叠为 (左值引用),从而避免语法错误。引用折叠的核心价值是支撑「万能引用」(
2025-12-04 21:38:33
1005
原创 【STL】内部使用哈希表的unordered_map/unordered_set
内部实现: 哈希表(Hash Table) 例如: 或 :插入键值对。 :删除键为 的键值对。 :返回键值对的数量。 :判断是否为空。unordered_set< k >无序集合内部实现也是哈希表要找数值,返回下标,一个键值对用unordered_map键:数值,值:该数所在的下标利用find寻找和数(比遍历快)先找再插入,防止自己加自己49. 字母异位词分组要找同字母的单词,返回这些单词,也是键值对unordered_map键:排序后的字母,值:这些字母的单词这样
2025-11-23 18:23:06
138
原创 【Docker】Compose
Docker Compose是Docker官方提供的容器编排工具,通过docker-compose.yml配置文件实现多容器应用的管理。该工具支持一键启动、停止和构建服务,主要流程包括编写YAML格式的配置文件(定义服务、网络、数据卷等)、通过docker-compose up命令启动容器,以及使用stop/down等命令管理应用。常用操作包括后台启动(-d)、查看状态(ps)、查看日志(logs)和清理资源(down -v/--rmi all)。配置文件核心内容包括服务定义、端口映射、数据挂载和依赖关系等
2025-11-11 21:53:15
218
原创 【Docker】网络
Docker网络提供容器间通信的虚拟化解决方案,支持bridge(默认)、host、none及自定义网络四种模式。默认bridge网络允许容器互联但需通过IP访问,自定义网络支持容器名解析和更好的隔离性。host模式共享宿主机网络性能最优但牺牲隔离,none模式完全禁用网络适用于离线任务。关键命令包括创建(network create)、连接容器(network connect)等,生产环境推荐使用自定义网络以确保安全性和灵活性。不同模式适用于容器互联、服务暴露或纯本地计算等场景。
2025-11-11 21:26:08
403
转载 【Docker】存储-绑定挂载和卷
摘要: 本文对比了Docker容器中的三种数据存储方案:默认临时存储、绑定挂载(BindMounts)和数据卷(Volumes)。默认存储随容器销毁丢失数据,适合临时场景;绑定挂载直接关联宿主机目录,适合开发调试,但存在权限风险;数据卷由Docker托管,独立于容器生命周期,支持持久化和跨容器共享。通过Nginx示例演示了两种持久化方案的操作流程,并提供了数据卷的清理方法(dockervolumerm/prune)。核心建议:开发环境优先用绑定挂载,生产环境推荐数据卷以确保安全性与可维护性。
2025-11-11 17:56:37
38
原创 【Docker】Dockerfile自定义镜像
-进入容器输入命令创建镜像将容器 9aaf3cd86741 (容器id)的当前状态提交为一个新的镜像,镜像名称为 alpine-figlet。
2025-11-11 16:44:07
571
原创 5 用例&项目进度管理方法
文章系统介绍了用户故事与用例在系统开发中的应用,以及项目进度管理的核心流程。第一部分阐述用户故事的定义、模板和验收标准,以及用例的识别技术(用户目标技术和事件分解技术)。第二部分详解项目进度管理的六个核心过程,包括计划制定、活动定义与排序、时间估算、进度控制等,并介绍了关键工具如网络图、甘特图和PERT分析技术。全文为项目管理和系统开发提供了实用的方法论指导。
2025-11-06 23:39:57
1050
原创 4 信息收集&建模和工作流程
描述用户(或系统)活动、执行每个活动的人员以及这些活动的顺序流程的 UML 图,用于显示工作流的图形模型(A UML diagram that describes user (or system) activities, the personnel performing each activity, and the sequential flow of these activities, used to show a graphical model of a workflow. )
2025-11-05 21:37:52
659
原创 2 系统方法&SDLC示例
定义:项目生命周期是项目阶段的集合,明确每个阶段需执行的工作、将产生的可交付成果、参与人员,以及管理层如何控制和批准各阶段产出。work可交付成果:作为项目一部分生产或提供的产品或服务,如技术报告、培训课程、硬件设备等。
2025-11-05 21:35:40
623
原创 1系统分析与设计及 IT 项目管理
牛津词典(Oxford Dictionary):The development, study, or use of electronic equipment, especially computers, for storing and analyzing information.(电子设备的开发、研究或使用,尤指用于存储和分析信息的计算机。
2025-11-05 21:33:28
786
原创 【Qt】启动新窗口--C/S传输信息
创建新UI文件:界面文件右键单击--创建新文件在这创建了chat.ui后自动创建chat.h(包含一个Chat类)&chat.cpp堆空间(这里是widget.cpp中连接connect处理槽函数lambda里加的)
2025-10-26 15:53:08
452
原创 【Qt】文件操作/事件--mainwindow做编辑器
读文件: QByteArray类写道的位置 = file.readAll(文件对象)下拉这里的操作不能直接右键转到槽,所以需要在代码中自己写connect,连接信号与槽。mainwindow的UI部分,比widget多一个在这里输入(菜单栏部分)写文件:file.write(写的内容);(父类对象,框名,显示的路径, 显示的文件的类型)键盘、鼠标、拖放、滚轮、绘屏、定时……警告warning没取到。键盘事件的头文件:<QKeyEvent>声明槽函数(新建、打开、保存)。(窗口大小变化事件)等,均继承自。
2025-10-22 17:40:42
930
原创 一些可用于排序的函数(2542. 最大子序列的分数)
的比较逻辑与常规排序相反,默认最大堆思想,大的放后面。// 自定义比较规则:按字符串长度升序排序// 长度5// 长度6// 长度4while (!// 输出:pear apple bananapq.pop();return 0;
2025-10-14 23:01:24
794
原创 【STL】set容器(2336.无限集中的最小数字)
/ 1. 定义空集合(默认升序)// 2. 初始化列表// 自动去重并排序:{1, 3, 4, 5}// 3. 复制构造// 4. 自定义排序(降序)std::set存储自定义类型时,需指定排序规则(通过重载operator<或自定义比较器)。int age;// 自定义比较器(按年龄升序)// 年龄小的在前// 定义使用自定义比较器的set// 插入元素// 自动按年龄排序:Bob(20) → Alice(25)
2025-10-13 22:09:36
285
原创 【深度学习4】神经网络-激活函数
神经网络是由输入层、隐藏层和输出层组成的计算模型,其中隐藏层通过激活函数引入非线性变换。常用的激活函数包括Sigmoid(0-1概率输出)、Tanh(-1-1对称输出)、ReLU(解决梯度消失)和Softmax(多分类)。
2025-08-18 13:58:03
531
原创 【深度学习3】向量化(Vectorization)
是一种将(或矩阵、张量)形式,并利用(如矩阵乘法、向量加法等)操作的技术。它是提升计算效率、简化模型实现的核心手段,尤其在处理大规模数据时至关重要。代码速度会比用for循环快很多。深度学习使用CPU和GPU都可以单指令流多数据流(SIMD)拥有并行的指令,只是GPU更擅长(更快)。在可能的情况下避免使用循环,而使用向量化提升速度。有很多。
2025-08-11 18:39:39
601
原创 【深度学习2】logistic回归以及梯度下降
逻辑回归(Logistic Regression)是一种广泛应用于的统计学习方法,尤其适用于(如 “是 / 否”“正 / 负”)。本质上是一种分类算法,通过建立输入特征与输出类别之间的概率关系来进行预测。
2025-08-09 12:52:44
440
原创 【深度学习1】什么是神经网络
神经网络通过模拟人脑神经元之间的连接方式,学习输入数据与输出结果之间的映射关系,从而实现对复杂模式的识别、预测或决策。输入特征x -- 通过神经元(计算)-- 输出数据y输入层--隐藏层--输出层x到y是一种映射(rectified linear unit,修正线性单元,一种非线性激活函数)修正:取不小于0的值激活函数决定了神经网络中一个神经元是否应该被 “激活”(即输出信号的强度),它接收神经元的加权输入(通常是前一层输出的线性组合),并输出一个非线性变换后的结果,作为下一层的输入。
2025-08-08 18:38:20
1136
原创 【计组】第五章 中央处理器-题
中专用于数据运算操作元件如:多路选择器MUX、加法器Adder、算术逻辑部件ALU状态元件如:通用寄存器、暂存寄存器。现在的计算机已经没有机器周期。只考虑时钟周期是的寄存器。用于存放操作数和各种地址信息等,,便于操作控制。执行时所依据的条件来自,对标志寄存器的内容测试,判断是否满足转移条件。数据总线的位数与处理器的位数相同,表示CPU一次能处理的数据的位数。间址周期操作数的,间址周期结束后。
2024-05-28 14:48:11
1546
原创 【计组】第四章 指令系统-题
指令的地址由程序计数器PC给出。指令的地址码字段是指令的操作数地址。程序控制指令包括:无条件转移、有条件转移、子程序调用、返回指令、循环指令等。中断由,不属于程序控制指令。
2024-05-19 19:56:13
2027
原创 【Python】类和对象
由于L是数组,fun传入它相当于传入了它的首地址,所以它在fun函数的改变影响到它本身(在主程序)中的值,得到第四个输出。首先fun中只传入了x,没有传入L,所以L用默认值9,x形参在fun函数内变为3,L9后面追加8,得到第一个输出;由于是值传递,所以x的实参(在主程序中)没有改变,主程序中的L也没有改变,所以第二个输出XL为其初始值;第二次调用fun传入了x和L,此时L为4,1,x赋值为3,L的4,1,后面追加8,得到第三个输出;
2024-05-09 17:30:05
783
原创 【Python】函数设计
1.联系函数的设计2.找质数3.找因子4.判断水仙花数5.斐波拉契数列递归调用,并用数组存储已计算过的数,减少重复计算编写两个函数分别按单利和复利计算利息,根据本金、年利率、存款年限得到本息和和利息。调用这两个函数计算1000元在银行存3年,在年利率是6%的情况下,单利和复利分别获得的本息和和利息。单利计算指只有本金计算利息。复利计算是指不仅本金计算利息,利息也计算利息,也就是通常所说的“利滚利”。如这题按单利计算本息和1000十1000*6%*3=1180元,其中利息为180元;
2024-04-30 15:34:16
716
2
原创 【Python】字符串
1. 字符串读取、拼接、匹配、随机生成2. ‘’.join()连接字符串3. 使用了random随机函数4. 字符串列表里面使用判断语句调用函数。
2024-04-30 15:27:13
794
原创 【Python】控制语句
1、运用python的控制语句if elif else2、回顾输入输出函数的使用3、使用random函数得到随机数4、运用python的循环语句5、熟悉了埃筛法找素数6、练习了数组和参数传递。
2024-04-28 12:59:00
441
1
原创 【操作系统】调度算法
周转时间=完成时间-到达时间带权周转时间=周转时间/运行时间等待时间=周转时间-运行时间响应比=(等待时间+要求服务时间)/ 要求服务时间。
2023-11-17 11:38:05
1075
原创 【numpy】数据类型
b布尔型i整形u无符号整形f浮点型c复数浮点型m时间间隔M日期间隔O(python)对象a字符串U UnicodeV原始数据。
2023-11-14 18:57:33
302
原创 【操作系统】线程、多线程
传统的进程只能串行的执行一系列程序,线程增加并发度。同一个进程分为多个线程。线程是调度的基本单元,程序执行流的最小单位,基本的CPU执行单元。进程是资源分配的基本单位。
2023-09-24 13:55:21
254
1
原创 【操作系统】进程控制
进程控制:创建新进程,撤销已有进程,实现进程状态转换等。原语:进程控制用的程序段。,用"关中断"和"开中断"指令(特权指令)实现原子性。关中断后不再例行检查中断信号(一直执行)直到开中断后恢复检查。
2023-09-13 21:57:02
424
1
原创 【操作系统】进程的状态
创建,等待分配处理机CPU资源(叫阻塞因为相对CPU来说它很慢,等待除CPU以外的资源,如I/O),终止。创建好的进程放入就绪队列等待资源分配。有专门的阻塞队列(I/O的排队队列)终止删除进程,清空PCB,并将空PCB返还系统。
2023-09-13 15:34:45
635
1
VSCode,(Ubuntu)Linux操作系统安装包
2023-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅