自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2025-11-19-算法分析与设计实验5_贪心法

本文实验报告针对贪心算法与动态规划进行对比研究,主要内容包括:1)通过0-1背包问题对比两种算法,动态规划得到最优解20(选择物品3、4),贪心算法仅得19(选择物品4、2、1);2)实现活动安排问题的贪心解法;3)分析贪心算法的局限性,如在0-1背包问题中可能无法获得最优解。实验结果表明动态规划能保证最优解但复杂度较高,而贪心算法效率更高但适用范围有限。

2025-11-19 20:55:24 400

原创 2025-11-18-LeetCode刷题笔记-717-1比特与2比特字符

题目要求判断给定的0/1数组最后一个0是否独立为1比特字符。通过贪心算法从左到右扫描数组,当遇到1时跳过2位,0时跳过1位,最终检查是否落在最后一位即可。时间复杂度O(n),空间复杂度O(1)。另可通过统计末尾连续1的奇偶性快速判断。测试用例验证了算法的正确性,保证最后一位为0简化了边界处理。

2025-11-18 16:26:54 237

原创 2025-11-17-LeetCode刷题笔记-1437-是否所有1都至少相隔k个元素

该题目要求判断数组中所有1之间的间隔是否至少为k。算法采用一次遍历,记录上一个1的位置last1,当遇到新1时检查其间隔是否满足要求。时间复杂度O(n),空间复杂度O(1)。核心技巧是将last1初始化为足够小值避免边界判断,适用于基础数组遍历问题。

2025-11-17 15:42:30 326

原创 2025-10-18-C++中浮点数取整:floor, ceil与round

C++ 提供了多种浮点数取整方法:floor() 向下取整(向负无穷方向)、ceil() 向上取整(向正无穷方向)、round() 四舍五入(.5时远离零)。这些函数都返回浮点类型,使用时需注意负数处理差异和可能存在的精度问题。强制类型转换可获得整数结果。相比传统方法(如x+0.5再floor),建议优先使用标准库函数确保行为一致性。

2025-11-16 19:03:15 632

原创 2025-11-16-计算机图形学种子填充算法

本文介绍了计算机图形学中的种子填充算法,主要包括三种实现方式:递归法、基于栈的方法和广度优先搜索法。实验目的是掌握这些填充算法及其效率分析,了解四连通和八连通概念。种子填充法通过选定初始种子点,根据边界或内点表示法判断填充范围,以四连通或八连通方式蔓延填充区域。递归法简单但易栈溢出;基于栈和队列的方法通过显式数据结构存储待处理点,避免了递归问题但仍有内存占用大的缺点。三种方法都面临边界精度和访问效率的挑战,适用于不同形状的图形填充需求。

2025-11-16 10:38:29 567

原创 2025-07-29-九格通用基础大模型环境配置

本文记录了2025年7月29日配置九格通用基础大模型(CPM-9G-8B)环境的完整过程。该模型由启元实验室联合多家顶尖科研单位研发,支持多种NLP和多模态任务。配置环境包括:创建Python3.10.16虚拟环境、安装CUDA11.8和PyTorch2.2.0等依赖项,克隆项目仓库并下载模型权重文件。文章详细说明了使用transformers库进行多模态推理的代码实现,包括图片识别和对话功能,并提供了流式输出的设置方法。整个配置过程配有截图说明,最终成功运行了基于图片的问答推理任务。

2025-07-29 12:18:34 1109 1

原创 2025-07-03-拯救我的“高烧”战友——Y7000P 2024版清灰换硅脂记录

摘要:本文记录了拯救者Y7000P 2024版笔记本电脑的清灰换硅脂全过程。由于长期使用导致散热系统效能下降,作者通过拆解D面、清洁散热模组、更换高性能硅脂(利民TF7)等步骤,最终使CPU/GPU待机温度分别下降10℃和9℃,显著改善了散热性能。文章详细介绍了所需工具、操作步骤及注意事项,并附有图文教程,为同类机型用户提供了实用的维护参考。

2025-07-04 15:31:52 2286 1

原创 2025-02-23-abc394

摘要:本文记录了Atcoder abc394比赛的5道题目解决方案。A题筛选字符串中的数字2;B题对字符串数组按长度排序;C题处理字符串中的WA替换为AC;D题验证括号序列是否匹配;E题使用BFS计算矩阵中各点对的最短回文路径。代码均采用C++实现,涵盖了字符串处理、排序、栈操作和广度优先搜索等算法。

2025-06-28 11:17:13 267

原创 2025-05-06-Windows系统将安装过系统镜像的固态硬盘恢复

摘要:本文介绍了如何将制作过Windows系统镜像的固态硬盘/U盘恢复为普通存储设备的方法。通过磁盘管理工具(Win+X快捷键后按K),删除原有分区并新建简单卷即可完成恢复操作。操作步骤简单明了,适用于需要重新利用系统安装盘存储空间的用户。

2025-06-28 11:14:57 452

原创 2025-05-05-80x86汇编语言环境配置

本文介绍了在VSCode中配置80x86汇编语言开发环境的方法。主要内容包括:1) 安装MASM/TASM插件;2) 配置settings.json文件,设置汇编器路径和调试参数;3) 编写测试程序验证环境配置;4) 解决常见路径问题和调试技巧;5) 扩展设置选项说明,包括汇编工具选择、模拟器配置和DOSBox参数调整。通过图文结合的方式,详细指导用户完成从环境搭建到程序调试的全流程,适合汇编语言学习者参考使用。

2025-06-19 23:20:06 361

原创 2025-05-21-汇编语言键盘输入输出

汇编语言键盘输入输出实验摘要 本实验包含三个汇编语言编程任务: 数组处理任务:读取数组AA_1中的7个数字(1,3,5,7,2,4,6),每个元素加2后存入BB_1数组并显示,使用循环结构和寄存器间接寻址方式完成数据操作。 字符处理任务:接收小写字母,显示其前导和后续字符,通过使用DOS中断功能实现字符输入/输出,并设置循环结构处理三个字符的显示。 运算器任务:对两个带符号字节数据进行加减乘除运算并显示结果,重点在于处理负数的绝对值转换和十进制显示转换,使用堆栈保存中间结果。 实验涉及关键汇编技术包括:DO

2025-06-17 16:12:25 716

原创 2025-05-12-虚函数

title: 2025-05-12-虚函数tags: 程序开发2025-05-12-虚函数虚函数是在父类中定义的一种特殊类型的函数,允许子类重写该函数以适应其自身需求。虚函数的调用取决于对象的实际类型,而不是指针或引用类型。通过将函数声明为虚函数,可以使继承层次结构中的每个子类都能够使用其自己的实现,从而提高代码的可扩展性和灵活性。在 C++ 中,使用关键字"virtual"来定义虚函数。虚函数虚在所谓"推迟联编"或者"动态联编"上,一个类函数的调用并不是在编译时刻被确定的,而是在运行时刻被确定的。由于编

2025-06-12 10:36:41 847

原创 2025-05-07-二分查找

本文总结了二分查找算法的要点和使用场景,对比了两种区间定义方法(闭区间和左闭右开)的实现差异。通过LeetCode 704题展示了两种解法代码,并扩展到35题(搜索插入位置)和34题(查找元素边界)的应用。此外,还介绍了x的平方根(69题)的多种解法:二分法、牛顿迭代法、快速平方根算法(0x5f3759df)、位运算和数学公式法。强调在二分查找中明确区间定义的重要性,以及根据不同问题特性选择最优解法。

2025-06-12 10:34:29 399

原创 2025-03-14-Google检索技巧

本文总结了13个高效使用Google搜索的技巧,包括精确搜索短语(“ ”)、排除内容(-)、模糊搜索(*)、范围搜索(...)、站点搜索(site:)、文件类型搜索(filetype:)、逻辑运算符(AND/OR)、定义查询(define:)、相关内容搜索(+)、相似网站查询(related:)和时间范围搜索(before:/after:)。这些技巧能帮助用户更精准地获取所需信息,提高搜索效率。适用于需要快速查找特定内容、排除干扰结果或限定搜索范围的场景。

2025-06-10 20:30:47 574

原创 2025-03-15-位运算

位运算是一种基于整数二进制表示的运算方式。由于计算机内部以二进制形式存储数据,位运算的速度非常快,通常比普通算术运算更高效。

2025-06-10 20:28:21 669

原创 2025-05-08-deepseek本地化部署

理解系统架构与原理,掌握 DeepSeek 的基本工作原理、内部架构和检索机制,了解其在大规模语义检索中的优势。学习如何在本地环境中部署和调试 DeepSeek 系统,包括环境配置、依赖安装、参数调优等关键步骤。

2025-06-09 22:19:02 2069

原创 2025-03-28-Tmux(multi-shell manager)command summary

(教学视频)tmux ls。

2025-06-09 09:42:50 290

原创 2025-03-20-使用word文档导出功能压缩图片的技巧

点击“文件”菜单,选择“另存为”,在另存为对话框中选择“Web 页面(*.htm;*.html)”作为文件类型。点击“插入”菜单,选择“图片”,然后选择你想要提取的图片文件。在文件夹中找到“images”子文件夹,你的图片就在里面。实测约 3mb 的图片可以压缩至 100kb 左右。在保存位置找到与网页文件同名的文件夹,打开它。选择保存位置,为文件命名,然后点击“保存”。调整图片大小和位置,使其符合你的需求。打开 Microsoft Word。关闭 Word 文档。

2025-06-09 09:41:51 397

原创 2025-03-17-构造函数与析构函数

在 CPP 中,类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。

2025-06-09 09:40:55 775

转载 2025-06-08-大模型底层技术分析

「语言模型」是一种「人工智能系统」,旨在处理、理解和生成类似人类的语言。它们从大型数据集中学习模式和结构,使得能够产生连贯且上下文相关的文本,应用于翻译、摘要、聊天机器人和内容生成等领域。

2025-06-09 09:37:09 140

原创 2025-02-09-wsl启动报错Cannot execute daemonize to start systemd的解决方法

摘要:WSL2启动时报错“Cannot execute daemonize to start systemd”是由于缺少daemonize工具导致。解决方法包括以root身份检查/安装daemonize,若遇安装失败需更新软件源(可选官方源或国内镜像)。安装成功后验证路径并重启WSL即可。如需长期使用systemd服务,可修改wsl.conf启用systemd支持。该问题常见于依赖systemd的服务(如Docker)在WSL2中的运行场景。

2025-06-09 09:36:05 1307

原创 2025-06-08-深度学习网络介绍(语义分割,实例分割,目标检测)

语义”是个很抽象的概念,在 2D 图像领域,每个像素点作为最小单位,它的像素值代表的就是一个特征,即“语义”信息。语义分割会为图像中的每个像素分配一个类别,但是同一类别之间的对象不会区分。而实例分割,只对特定的物体进行分类。这看起来与目标检测相似,不同的是目标检测输出目标的边界框和类别,实例分割输出的是目标的 Mask 和类别。具体而言,语义分割的目的是为了从像素级别理解图像的内容,并为图像中的每个像素分配一个对象类。语义分割是一种将图像中的每个像素分配给特定类别的技术。

2025-06-08 14:58:43 1265

原创 2025-06-05-智能体平台及关键技术分析

智能体平台(Agent Platform)旨在为开发者提供一站式工具链,用于**创建**、**训练**、**部署**和**管理**智能体应用。它支持环境感知(传感器输入或数据流)、知识库管理(知识图谱或向量检索)、决策引擎(基于规则、强化学习或大模型推理)和执行层(动作指令或 API 调用)等核心模块。

2025-06-08 14:45:09 1195

原创 2025-06-04-低代码平台及相关技术介绍

低代码是高级语言开发技术发展到一定阶段的产物,以覆盖软件全生命周期的可视化为主要特征。其核心原理是将开发者的可视化设计保存为对应的元数据,通过解析元数据,形成可运行的软件。元数据通常隐藏在可视化开发环境和服务器运行时之下,低代码平台的使用者可不必关心其技术细节,能将更多精力聚焦在业务逻辑的实现和技术创新落地上。

2025-06-08 14:42:05 802

原创 2025-06-03-微信小程序开发框架详解

微信小程序开发可分为**官方原生框架(MINA)与多种第三方跨端开发框架**两大类。官方 MINA 框架提供了 WXML/WXSS/JS 三层模型,以及基于双线程的渲染与逻辑分离机制,适合对微信生态深度依赖的项目;第三方框架则通过封装、编译等手段让 Vue、React、Web 原生等技术栈在小程序中复用,覆盖从单一微信端到多端(小程序 +H5+App)的多种场景。在众多跨端方案中,**uni-app** 与 **Taro** 拥有最活跃的社区和最完善的生态,分别代表 Vue 与 React 技术栈;**R

2025-06-08 14:36:47 1651

原创 2025-06-02-IP 地址规划及案例分析

在网络通信中,**MAC 地址**与 **IP 地址**分别位于 OSI 模型的数据链路层和网络层,二者协同完成从局域到广域的可靠互联。MAC 地址由 IEEE 分配的 OUI(组织唯一标识符)和厂商自定义部分构成,对应真实硬件;IP 地址则分为网络号与主机号,用以逻辑上定位主机并实现跨网段路由。IP 地址(Internet Protocol Address),缩写为 IP Adress,是一种在 Internet 上的给主机统一编址的地址格式,也称为网络协议(IP 协议)地址。它为互联网上的每一个网络

2025-06-08 14:27:31 1214

原创 2025-06-02-数据库的分类和应用

数据库就是一个存放数据的仓库,这个仓库按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织存储的,我们可以通过数据库提供的多种方法来管理数据库里的数据。  我们的程序都是在内存中运行的,一旦程序运行结束或者计算机断电,程序运行中的数据都会丢失,所以我们就需要将一些程序运行的数据持久化到硬盘之中,以确保数据的安全性。说白了,数据库就是存储数据的仓库。

2025-06-08 14:23:20 980

原创 2025-06-01-Hive 技术及应用介绍

Apache Hive 是基于 Hadoop 构建的数据仓库工具,它为海量结构化数据提供类 SQL 的查询能力,并将查询翻译为 MapReduce、Tez 或 Spark 作业执行。Hive 简化了大数据批量分析的使用门槛,让熟悉 SQL 的开发者能够在 Hadoop 生态上轻松进行 ETL、OLAP 和 BI 分析。

2025-06-08 13:50:47 1289

原创 2025-05-11-银行家算法分析

在银行中,客户申请贷款的数量是有限的,每个客户在第一次申请贷款时要声明完成该项目所需的最大资金量,在满足所有贷款要求时,客户应及时归还。银行家在客户申请的贷款数量不超过自己拥有的最大值时,都应尽量满足客户的需要。在这样的描述中,银行家就好比操作系统,资金就是资源,客户就相当于要申请资源的进程。

2025-06-08 13:47:31 727

原创 2025-05-09-进程调度算法分析

根据是否支持抢占(Preemptive)和队列策略,可将操作系统中的调度算法大致分为两类:1. **非抢占式调度(Non-preemptive Scheduling)**- 一旦进程被分配 CPU,直到该进程自愿放弃 CPU(如执行完成或进入 I/O 阻塞)才会切换。- 算法典型:先来先服务 (FCFS)、短作业优先 (SJF,非抢占版本)、优先级非抢占。1. **抢占式调度(Preemptive Scheduling)**- 若有更高优先级的进程到达或某种时间片用尽,会强制剥夺当前进程的

2025-06-08 13:44:04 875

原创 2025-05-01-决策树算法及应用

决策树是一种以树状结构对数据进行划分的分类(Classification)或回归(Regression)模型。其核心思想是:> 通过“自上而下”的方式,根据某一特征对样本进行二叉或多叉划分,直至满足停止条件(如纯度高、样本数小于阈值等),构造一棵可解释性高的树形模型。在叶节点输出类别(分类树)或数值(回归树)。

2025-06-08 13:36:53 895

原创 2025-04-28-堆、栈及其应用分析

- **栈(Stack)**- **数据结构视角**:一种受限的线性结构,只能在同一端(栈顶)进行插入(Push)和删除(Pop),遵循 “后进先出”(LIFO)原则。- **内存视角**:栈区由操作系统自动分配与回收,用于存储函数调用时的局部变量、函数参数、返回地址等信息。栈空间连续,访问和分配速度极快,但容量有限(通常几 MB),每个线程都有独立栈空间。- **堆(Heap)** - **数据结构视角**:一种近似完全二叉树的优先队列结构(最大堆或最小堆),常用于按优先级提取元素。 - *

2025-06-08 13:30:43 1108

原创 2025-04-23-基于上下位机结构的系统实例分析

在现代工业自动化、物联网和智能控制领域,上下位机结构是一种核心的分层控制架构。上位机(Upper Computer)通常是功能强大的计算机,如个人电脑、工业 PC 或服务器,负责监控、数据处理、用户交互和决策制定。下位机(Lower Computer)是直接与物理设备(如传感器、执行器)连接的控制器,如可编程逻辑控制器(PLC)、单片机或嵌入式系统,负责执行具体任务和数据采集。这种结构通过通信协议(如 Modbus、TCP/IP)实现高效协作,广泛应用于工业、物联网和嵌入式系统等领域。

2025-06-08 13:26:06 777

原创 2025-04-22-X86 架构与 Arm 架构异同及应用

X86与Arm架构是当前主流的两种处理器架构。X86采用复杂指令集(CISC),适合高性能计算,广泛应用于PC和服务器;Arm采用精简指令集(RISC),以低功耗著称,主导移动和嵌入式市场。两者的核心差异在于CISC单指令执行复杂操作,RISC需多条简单指令完成同样任务。现代CPU架构相互借鉴,X86也开始将复杂指令分解为微指令。应用方面,X86适用于桌面、工作站等高性能场景,而Arm凭借big.LITTLE异构计算架构,在移动设备和IoT领域占据优势。随着技术进步,两者在服务器市场的竞争日益激烈。

2025-06-08 13:21:27 2284

原创 2025-04-20-CPU-GPU-NPU 的区别及应用前景

现代的计算机, 大多遵守冯诺依曼体系结构,即CPU,即中央处理器,是一台计算机的运算核心和控制核心。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU 由运算器、控制器、寄存器、高速缓存及实现它们之间联系的数据、控制及状态的总线构成存储器,分为外存和内存, 用于存储数据(使用二进制方式存储)输入设备,用户给计算机发号施令的设备输出设备,计算机个用户汇报结果的设备CPU/GPU/NPU 等等都是硬件芯片,简单来说,晶体管既可以用来实现逻辑控制单元, 也可以用来实现运算单元(算力)。

2025-06-08 13:15:33 1370

原创 2025-04-15-二进制思想在计算机科学中的应用

二进制是一种基数为 2 的数制,只使用两个数字——0 和 1。这两个数字被称为比特(bit),是计算机中最小的数据单位。二进制是计算机科学的基础,用于表示所有数据类型。例如,文本通过 ASCII 编码转为二进制,图像和声音也以二进制存储。逻辑电路依赖二进制逻辑门(如 AND、OR、NOT)执行计算,处理器通过二进制指令执行操作。此外,二进制在数字通信、加密技术和错误检测中也至关重要。这些应用确保了现代计算系统的功能。

2025-06-08 12:58:07 1467 1

原创 快慢指针:链表问题的利器

快慢指针是一种非常实用的链表问题解决技巧,通过合理使用快慢指针,可以高效地解决多种链表问题。掌握快慢指针的使用方法和常见应用场景,将有助于你在算法面试和实际开发中更好地应对链表相关问题。希望本文对你的学习和工作有所帮助。

2025-01-14 21:12:07 532

原创 LeetCode 2270: 分割数组的方案数

LeetCode 2270: 分割数组的方案数是一个典型的前缀和问题,通过一次遍历和逐步更新状态,我们可以高效地解决问题。掌握前缀和、双指针和一次遍历等技巧,对于解决类似问题非常有帮助。希望这篇文章能帮助你更好地理解这个问题的解法和相关知识点。

2025-01-13 23:10:43 592

原创 LeetCode 2275: 按位与结果大于零的最长组合题解

利用了按位与运算的特性通过逆向思维简化问题展示了如何高效处理二进制位的统计问题掌握这类问题对于理解计算机底层运算和优化算法都有很大帮助。

2025-01-12 23:46:06 420

原创 解决 Git SSL 连接错误:OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno

这个错误通常表示 Git 在尝试通过 HTTPS 连接到 GitHub 时遇到了 SSL 连接问题。

2025-01-12 22:22:18 1988

数学建模学习的相关资料

2023国赛+2024美赛优秀论文,加部分模型的简单示例代码

2024-08-19

数模笔记-微分方程与差分方程

数模笔记-微分方程与差分方程

2024-08-10

空空如也

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

TA关注的人

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