当前位置: 首页 > news >正文

数学建模 第一节

目录​​​​​​

前言

一 优化模型的类型

 二  线性规划1

      线性规划2

 三 0-1规划

总结


前言

数学建模主要是将问题转化为模型,然后再以编程的形式输出出来
算法都知道,数学建模也需要用到算法,但是不是主要以编程形式展示,而是利用模型和有关于数学建模的公具加以展示,这里主要以问题的形式引出数学建模的知识点和编程知识点


一 优化模型的类型

1线性规划
2非线性规划
3正数规划
4"0-1"规划

 二  线性规划1

问题一:合理利用线材问题
现在要做100套钢架,每套用长为2.9m,2.1m,1.5m的元钢各一根,已知原料长7.4m,问应该如何进行下料使用的原材料更小



首先我们要知道我们这个题目明显是一个取最优解的问题,那么就是一个切割最优问题
其次就要去找题目里面的未知量,找到未知量,才可以构建出模型
模型的确定是根据目标函数和约束条件确定的

为什么是线性规划
我们需要确定如何从7.4米长的原料中切割出所需的2.9米、2.1米和1.5米的元钢,以最小化浪费的材料。这个问题可以表示为一个线性规划问题,因为:

  • 目标函数是线性的:我们的目标是最小化使用的原料根数,即 x1​+x2​+x3​+x4​+x5​+x6​,这是一个线性函数。

  • 约束条件是线性的:我们需要满足切割出的元钢总数至少为100根的条件,这些条件可以表示为线性不等式,例如 2.9*x1​+2.9*2x2​+2.9x5​≥100。

  • 变量是非负的:切割的套数 xi​ 必须是非负整数。

那么我们知道这些未知量了,我们就要构建模型,首先我们来构建一个表格

方案1方案2方案3方案4方案5
2.912❌ 1❌ 
2.1❌ ❌ 221
1.5312❌ 3

首先我们有这么多种的方案,每一个方案构建的总值都是小于7.4m的
这里讲讲为什么不考虑使用2.9 2.1 1.5各自取一根不加?
📌 结论

  1. 单看浪费大小不够,要考虑整体优化
  2. 如果一个方案的浪费比其他方案都大,通常不会被选入最优解
  3. 有些方案即使浪费稍多,但可能是拼凑 100 套钢架的“必要补充”,可以加入
  4. 最好的方法是用整数规划(ILP)求解,让计算机自动决定是否要用某个方案

💡 所以,加不加 6.5m 方案?可以加,但最终让计算机决定! 🚀
因为我们看倒数第二个,这个是已经到7.1了,之前都是7.4,7.3,7.2,这个是7.1所以加入,但是我们到第五种方案的时候已经到达了6.6,跨度很大,这个时候,我们就取这个,首先我们电脑是会自己判断这个方案取不取的,这个时候我们加上是为了避免电脑取最优解要用到,保险,这个时候,其实没有必要加这个方案六,每个都取一根,因为我们已经有一个保险的了

即使你加了也没事,因为这个电脑可能不会选择,不考虑这个方案,我们这个题目是要减少浪费的

那么我们要怎么判断是否要加上方案呢?以下是al分析,作者先记下来,方便下次复习看
📌 原则 1:能否减少浪费?

  • 计算当前已有方案的最小浪费(例如,方案 2 只浪费 0.1m)。
  • 如果你的新方案浪费比所有已知方案都多(例如浪费 0.9m),那它几乎不会被选入最优解。
  • ✅ 选择浪费更少的方案,❌ 排除浪费更多的方案

示例对比(假设现有方案最小浪费 0.1m):

方案切割方式总长浪费
方案 22.9m ×2 + 1.5m ×17.3m0.1m ✅(最优之一)
方案 32.1m ×2 + 1.5m ×27.2m0.2m
方案 52.1m ×1 + 1.5m ×36.6m0.8m ❓(可能需要)
你的方案2.9m ×1 + 2.1m ×1 + 1.5m ×16.5m0.9m ❌(比 0.8m 更差,不需要)

🔍 如果新方案的浪费比已有方案大,基本就不会被选取

📌 原则 2:能否帮助满足 100 套需求?

即使方案本身浪费稍多,但如果它能让其他方案更好地拼接成 100 套,也可能有用!

如何判断?

  1. 尝试去掉某个方案,看看是否还能刚好满足 100 套需求。
  2. 如果去掉某个方案会导致解不可行,说明它是必要的,即使它浪费稍多。
  3. 如果所有方案能凑够 100 套,而某个方案总是没被选中,那它可以去掉

💡 结论:如果一个方案不会被用到,或者可以被更优的方案替代,就不取!

📌 实践方法:让 ILP 自动决定

如果你不确定某个方案是否应该加入,可以让整数规划(ILP)自动决定

  1. 先把所有可能的方案(包括 6.5m 方案)都放进去
  2. 让 ILP 计算最优解,如果某个方案没有被选取,说明它不是最优的。
  3. 查看最终结果,看看哪些方案真正被使用了

接下来我们就要把这个模型转换到这歌软件上进行操作

接下来我们就要用到这个LINGO来编写
首先这个sets:和endsets是表示定义一个aa集合,aa集合里面有x这个变量,然后这个1..5就是这个变量的下标

然后这个min就是求解最小值,@sum表示求和,遍历集合aa的里的i,然后紧接着根据这个aa(i)遍历里面的变量
也就是遍历里面aa里面的i,然后这个后面这个是aa集合里面的变量,随着者aa里的i进行改变
下面就是一些约束条件了

@gin(x(i)) 指定 x(i) 必须是整数变量,然后for循环就是遍历这里面的变量,这些变量的值不可以是小数,而是整数

最后就输出90根钢铁了

三  线性规划2

问题二  某昼夜服务的公交路线每天个时间区段都需要的工作人员如下表格,设工作人员分别再各个时间区段一开始上班,并连续工作8小时,问该公交至少需要多少工作人员
 

班次时间需要人数
16:00-10:0060
210:00-14:0070
314:00-18:0060
418:00-22:0050
522:00-2:0020
62:00-6:0030

接下来我们要分这个题目 
首先我们题目问的是总共的工作人员最少,那么就是每个时间段的人我都是不知道那么是多少,删一个题目每一根钢材我都是知道的,我只需要设置出方案数量,然后把这些方案给规划起来求出值
所以我们这里设置的未知量就是每一个时间段的人数,考虑这里面的未知量

接下来我们就分析出了模型,接下来我们就可以编程了


 编程答案

Sets:aa /1..6/: y;bb/1..6/: x;
Endsetsdata:x = 60,70,60,50,20,30;
enddataMin = @sum(aa(i): y(i));y(1) + y(6) >= x(1);
y(2) + y(1) >= x(2);
y(3) + y(2) >= x(3);
y(4) + y(3) >= x(4);
y(5) + y(4) >= x(5);
y(6) + y(5) >= x(6);! 变量必须是整数;
@for(aa(i): @gin(y(i)));

这样才是正确的,答案为14

 三 0-1规划

在一个公司在市东南西三区建立门市部,有7个位置点(Ai,i=1.2.3...7)可供选择,规定:
1)在东区,由A1 A2 A3三个点至多选择两个
2)在西区,由A4 A5两个点至少选择一个
3)在南区,由A6 A7两个点至少选择一个
如果选用Ai点,设备投资估计为bi元,每年获利利润估计为ci元,但是投资总量不可以超过M元,问应该选择哪几个点建立门市部使得年利润最大

首先这个就是典型的0-1问题,每一个点我们都有选择和不选择,1就是选择,0就是不选择
那么我们就要考虑怎么选择就好了

接下来我们就只需要编程就好了

sets:aa/1..7/:b,c,x;
endsetsdata:c = 1,5,7,4,6,8,9; b = 12,56,45,34,32,78,89;M = 200;
enddatamax = @sum(aa(i):c(i)*x(i));
x(1) + x(2) + x(3) <= 2;
x(4) + x(5) >=1;
x(6) + x(7) >=1;
@sum(aa(i):b(i)*x(i)) <= M;
@for(aa(i):@bin(x(i)));

 1  for循环的错误使用

@sum(@for(aa(i):b(i)*x(i))) <= M;

这样是不对的,sum里面已经隐式包括了相加的迭代,所以这么写会出现语法错误 


2  错误提示栏的报错

这个通常是我么缺少了右括号才有的错误

这里的bin函数是直接随机取值,然后转化为01,这样就可以运用到0-1规划


总结

首先我们学习到了线性规划和0-1规划
0-1规划还是很好理解,但是这个线性规划还是有点抽象

首先第一个钢铁问题就是取走最优的部分,你可以看到这个就是把资源浪费最少的放上去,然后最后一个弄一个保险的就好了

第二个就是找出安排时间的问题,我们只需要把相邻的时间段弄出来,然后最后算出最后人数的最小值就好了因为这个是一环扣着一环的

你只需要把问题利用数学模型描述出来,编程就会自动帮你跑出来,也就是C++里面的抽象

相关文章:

数学建模 第一节

目录​​​​​​ 前言 一 优化模型的类型 二 线性规划1 线性规划2 三 0-1规划 总结 前言 数学建模主要是将问题转化为模型&#xff0c;然后再以编程的形式输出出来 算法都知道&#xff0c;数学建模也需要用到算法&#xff0c;但是不是主要以编程形式展示&#xff0c;而是…...

《Python实战进阶》No24: PyAutoGUI 实现桌面自动化

No24: PyAutoGUI 实现桌面自动化 摘要 PyAutoGUI 是一个跨平台的桌面自动化工具&#xff0c;能够模拟鼠标点击、键盘输入、屏幕截图与图像识别&#xff0c;适用于重复性桌面任务&#xff08;如表单填写、游戏操作、批量文件处理&#xff09;。本集通过代码截图输出日志的实战形…...

实验篇| CentOS 7 下 Keepalived + Nginx 实现双机高可用

为什么要做双机高可用&#xff1f;‌ 想象一下&#xff1a;你的网站突然宕机&#xff0c;用户无法访问&#xff0c;订单流失、口碑暴跌…&#x1f4b8; ‌双机热备‌就是解决这个痛点的终极方案&#xff01;两台服务器互为备份&#xff0c;724小时无缝切换&#xff0c;保障业务…...

音视频入门基础:RTP专题(19)——FFmpeg源码中,获取RTP的音频信息的实现(下)

本文接着《音视频入门基础&#xff1a;RTP专题&#xff08;18&#xff09;——FFmpeg源码中&#xff0c;获取RTP的音频信息的实现&#xff08;上&#xff09;》&#xff0c;继续讲解FFmpeg获取SDP描述的RTP流的音频信息到底是从哪个地方获取的。本文的一级标题从“四”开始。 四…...

JAVA面试_进阶部分_dubbo负载均衡策略

前言&#xff1a;zookeeper作为dubbo的注册中心&#xff0c;有一个很重要的点&#xff0c;我们的程序是分布式应用&#xff0c;服务部署在几个节点&#xff08;服务器&#xff09;上&#xff0c;当消费者调用服务时&#xff0c;zk返回给dubbo的是一个节点列表&#xff0c;但是d…...

《我的Python觉醒之路》之转型Python(十三)——控制流

#今天风景不错&#xff0c;明天继续学习 请关注我之前的笔记啊...

QT6.8.2在线安装记录

命令行带安装源启动&#xff0c;但仍不能连接到服务器&#xff0c;开着VPN才通过 .\qt-online-installer-windows-x64-4.8.1.exe --mirror https://mirrors.ustc.edu.cn/qtproject 开始安装前断开VPN&#xff0c;其实启动安装器时的镜像源修改参数是起作用的&#xff0c;因为下…...

70.HarmonyOS NEXT PicturePreview组件深度剖析:从架构设计到核心代码实现

温馨提示&#xff1a;本篇博客的详细代码已发布到 git : https://gitcode.com/nutpi/HarmonyosNext 可以下载运行哦&#xff01; HarmonyOS NEXT PicturePreview组件深度剖析&#xff1a;从架构设计到核心代码实现 文章目录 HarmonyOS NEXT PicturePreview组件深度剖析&#xf…...

如何从受 Cloudflare 保护的网站提取数据:技术与挑战

引言 Web抓取是数据科学和市场研究的重要工具&#xff0c;但当面对受Cloudflare等先进保护系统守护的网站时&#xff0c;这项任务变得异常具有挑战性。Cloudflare的机器人检测系统需要精心设计的网页抓取解决方案才能成功提取数据。本文将介绍Cloudflare的防护机制以及如何使用…...

【DeepSeek应用】DeepSeek模型本地化部署方案及Python实现

DeepSeek实在是太火了,虽然经过扩容和调整,但反应依旧不稳定,甚至小圆圈转半天最后却提示“服务器繁忙,请稍后再试。” 故此,本文通过讲解在本地部署 DeepSeek并配合python代码实现,让你零成本搭建自己的AI助理,无惧任务提交失败的压力。 一、环境准备 1. 安装依赖库 …...

WPF程序使用AutoUpdate实现自动更新

AutoUpdate.NET使用 一、AutoUpdater.NET 简介 AutoUpdater.NET 是一个开源库&#xff0c;支持从各种源&#xff08;如GitHub、FTP、HTTP服务器等&#xff09;下载并安装更新。它提供了灵活的配置选项&#xff0c;允许开发者根据需求定制更新检查逻辑和用户体验。 二、安装 …...

A SURVEY ON POST-TRAINING OF LARGE LANGUAGE MODELS——大型语言模型的训练后优化综述——第2部分

3、微调&#xff08;上一部分内容&#xff09; 4、LLMs的对齐 大型语言模型&#xff08;LLMs&#xff09;中的对齐涉及引导模型输出以符合人类预期和偏好&#xff0c;特别是在安全关键或用户面对的应用程序中。本章讨论了实现对齐的三个主要范式&#xff1a; 带有反馈的人工…...

【2025】Electron Git Desktop 实战一(上)(架构及首页设计开发)

源代码仓库&#xff1a; Github仓库【electron_git】 Commit &#xff1a; bb40040 Github Desktop 页面分析 本节目标&#xff1a; 1、实现类似Github Desktop的「空仓库」提示页 2、添加本地仓库逻辑编写从 Github Desktop 我们看到 他的 主要页面分为三个区域 Head头部区域…...

996引擎-问题处理:缺失特效分割文件 ModelAtlasSplitConfigs

通常我们买的资源都是带会 ModelAtlasSplitConfigs.txt 或 sceneAtlasSplitConfigs.txt 的 但有时确实找不到的话&#xff0c;是可以用996工具生成的&#xff1a;...

2024年12月CCF-GESP编程能力等级认证C++编程三级真题解析

三级真题的难度: ‌ CCF-GESP编程能力等级认证的C++三级真题难度通常被认为是中等水平,适合具备一定编程基础的考生。以下是关于三级真题难度的一些具体信息: 1. 考试内容 C++三级考试主要涵盖以下几个方面的知识: 基本语法:包括数据类型、变量、运算符等基础知…...

Java面试八股—Redis篇

一、Redis的使用场景 &#xff08;一&#xff09;缓存 1.Redis使用场景缓存 场景&#xff1a;缓存热点数据&#xff08;如用户信息、商品详情&#xff09;&#xff0c;减少数据库访问压力&#xff0c;提升响应速度。 2.缓存穿透 正常的访问是&#xff1a;根据ID查询文章&…...

机器人ROS学习:Ubuntu22.04安装ROS2和Moveit2实现运动规划

通过本篇文章学习&#xff0c;你可以收获以下内容&#xff1a; 学会在 Ubuntu22.04 上安装 Moveit2学会下载编译运行 Moveit2 样例程序学会使用样例程序进行运动规划等 版本平台 系统版本&#xff1a;ubuntu22.04ROS2 版本&#xff1a;humbleMoveit 版本&#xff1a;moveit2…...

树结构和数组之间的转化

1、树结构转为数组 treeToArray(treeData, returnValue []) { let newValue [...returnValue] treeData.map(item > { if (item.children) { const { children, ...treeObj } { ...item } newValue.push(treeObj) newValue this.treeToArray(children, newValue) } else…...

2024华东师范大学计算机复试上机真题

2024华东师范大学计算机复试机试真题 2023华东师范大学计算机复试机试真题 2022华东师范大学计算机复试机试真题 2024华东师范大学计算机复试上机真题 2023华东师范大学计算机复试上机真题 2022华东师范大学计算机复试上机真题 在线评测&#xff1a;传动门&#xff1a;pgcode…...

Blender-MCP服务源码3-插件开发

Blender-MCP服务源码3-插件开发 Blender-MCP服务源码解读-如何进行Blender插件开发 1-核心知识点 1&#xff09;使用Blender开发框架学习如何进行Blender调试2&#xff09;学习目标1-移除所有的Blender业务-了解如何MCP到底做了什么&#xff1f;3&#xff09;学习目标2-模拟MC…...

C++复试笔记(三)

1.友元函数和友元类 1.1友元函数 友元函数的经典实例是重载 "<<" 和 ">>" ,去重载operator<<&#xff0c;然后发现没办法将operator<<重载成成员函数。因为cout的 输出流对象和隐含的this指针在抢占第一个参数的位置。this指针默…...

【数学基础】概率与统计#1概率论与信息论初步

本系列内容介绍&#xff1a; 主要参考资料&#xff1a; 《深度学习》[美]伊恩古德菲洛 等 著 《机器人数学基础》吴福朝 张铃 著 文章为自学笔记&#xff0c;默认读者有一定的大学数学基础&#xff0c;仅供参考。 目录 随机变量概率分布离散型随机变量和概率质量函数连续型变量…...

掌握这些 UI 交互设计原则,提升产品易用性

在当今数字化时代&#xff0c;用户对于产品的体验要求越来越高&#xff0c;UI 交互设计成为决定产品成败的关键因素之一。一个易用的产品能够让用户轻松、高效地完成各种操作&#xff0c;而实现这一目标的核心在于遵循一系列科学合理的 UI 交互设计原则。本文将详细阐述简洁性、…...

工程化与框架系列(32)--前端测试实践指南

前端测试实践指南 &#x1f9ea; 引言 前端测试是保证应用质量的重要环节。本文将深入探讨前端测试的各个方面&#xff0c;包括单元测试、集成测试、端到端测试等&#xff0c;并提供实用的测试工具和最佳实践。 测试概述 前端测试主要包括以下类型&#xff1a; 单元测试&a…...

Python----计算机视觉处理(opencv:像素,RGB颜色,图像的存储,opencv安装,代码展示)

一、计算机眼中的图像 像素 像素是图像的基本单元&#xff0c;每个像素存储着图像的颜色、亮度和其他特征。一系列像素组合到一起就形成 了完整的图像&#xff0c;在计算机中&#xff0c;图像以像素的形式存在并采用二进制格式进行存储。根据图像的颜色不 同&#xff0c;每个像…...

表单 schema 配置化

一、前沿 基于 Ant Design Vue 组件库实现了表单的配置化生成&#xff0c;通过 schema 配置化的方式实现表单的动态渲染、数据绑定和更新等功能&#xff0c;而提交按钮及获取数据逻辑由使用方自行提供。通过 schema 对象来定义表单的结构和属性&#xff0c;modelData 对象存储…...

Java数据结构第二十三期:Map与Set的高效应用之道(二)

专栏&#xff1a;Java数据结构秘籍 个人主页&#xff1a;手握风云 目录 一、哈希表 1.1. 概念 1.2. 冲突 1.3. 避免冲突 1.4. 解决冲突 1.5. 实现 二、OJ练习 2.1. 只出现一次的数字 2.2. 随机链表的复制 2.3. 宝石与石头 一、哈希表 1.1. 概念 顺序结构以及平衡树中…...

unity生命周期

unity的生命周期 都是有序的1. 实例化与初始化阶段Awake()OnEnable() 2. 开始与更新阶段Start()FixedUpdate()Update()LateUpdate() 3. 渲染阶段OnPreCull()OnBecameVisible() 和 OnBecameInvisible()OnWillRenderObject()OnRenderObject()OnPostRender() 4. 销毁阶段OnDisable…...

对比学习(Contrastive Learning)

1. 概念 对比学习&#xff08;Contrastive Learning&#xff09;是一种自监督学习&#xff08;Self-Supervised Learning&#xff09;方法&#xff0c;其核心思想是通过相似样本靠近&#xff0c;不同样本远离的方式学习数据的潜在表示。它广泛用于无标签数据的特征提取&#x…...

C语言输入与输出:从零掌握数据的“对话”

手把手教你理解C语言中输入&#xff08;Input&#xff09;与输出&#xff08;Output&#xff09;的核心操作。 一、输入与输出是什么&#xff1f; C语言通过标准库函数实现程序与用户&#xff08;或设备&#xff09;的“对话”&#xff1a; 输出&#xff1a;程序将数据展示给…...

PyCharm 2019.1.3使用python3.9创建虚拟环境setuptools-40.8.0报错处理

目录 前置&#xff1a; 一劳永逸方法&#xff08;缺最后一步&#xff0c;没有成行&#xff09; step one: 下载高版本的pip、setuptools、virtualenv的tar.gz包 step two: 进入PyCharm安装目录的 helpers 目录下 step three: 下载并安装grep和sed命令&#xff0c;然后执行 …...

从0到1构建AI深度学习视频分析系统--基于YOLO 目标检测的动作序列检查系统:(2)消息队列与消息中间件

文章大纲 原始视频队列Python 内存视频缓存优化方案(4GB 以内)一、核心参数设计二、内存管理实现三、性能优化策略四、内存占用验证五、高级优化技巧六、部署建议检测结果队列YOLO检测结果队列技术方案一、技术选型矩阵二、核心实现代码三、性能优化策略四、可视化方案对比五…...

Redis基本命令手册——五大类型

目录 一&#xff1a;基本操作 二&#xff1a;字符串&#xff08;String&#xff09; 三&#xff1a;哈希&#xff08;Hash) 四&#xff1a;列表&#xff08;List&#xff09; 五&#xff1a;集合&#xff08;Set&#xff09; 六&#xff1a;有序集合&#xff08;Zset&…...

Java 大视界 -- Java 大数据在智能金融资产定价与风险管理中的应用(134)

&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎来到 青云交的博客&#xff01;能与诸位在此相逢&#xff0c;我倍感荣幸。在这飞速更迭的时代&#xff0c;我们都渴望一方心灵净土&#xff0c;而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识&#xff0c;也…...

Linux 系统蓝牙音频服务实现分析

Linux 系统蓝牙音频服务实现分析 蓝牙音频设备连接管理Linux 系统中,蓝牙音频服务实现为系统音频服务 PulseAudio 的可加载模块,它用来以 PulseAudio 标准的方式描述蓝牙音频设备,将其嵌入 PulseAudio 的音频处理流水线,并呈现给用户,支持用户切换音频设备,如蓝牙耳机。 …...

PyTorch 深度学习实战(14):Deep Deterministic Policy Gradient (DDPG) 算法

在上一篇文章中&#xff0c;我们介绍了 Proximal Policy Optimization (PPO) 算法&#xff0c;并使用它解决了 CartPole 问题。本文将深入探讨 Deep Deterministic Policy Gradient (DDPG) 算法&#xff0c;这是一种用于连续动作空间的强化学习算法。我们将使用 PyTorch 实现 D…...

craftjs的示例landing项目改成APP路由

下载项目 项目地址是&#xff1a;https://github.com/prevwong/craft.js 示例项目在examples文件夹下面landing文件夹 修改 1.修改依赖包 由于craftjs使用的多包管理&#xff0c;示例项目中craftjs/core和craftjs/layers使用的是工作区路径&#xff0c;这里需要修改版本 …...

java -jar 执行基于Maven构建的Java应用的方法总结

一、Maven pom.xml文件未指定主类的情况 1、用Maven打包 mvn clean package -DskipTests 2、用java命令执行jar包 java -cp maven-allin-mainclass-demo-1.0-SNAPSHOT.jar org.example.Main 二、Maven pom.xml文件指定主类的情况 1、pom.xml文件指定主类&#xff0c;有两种…...

前端发布缓存导致白屏解决方案

解决发布H5后因为本地缓存白屏方案 一、 核心配置优化&#xff08;前提是访问网站的请求能抵达服务器&#xff09; 方案一&#xff1a;前端项目设置全局不缓存方案 运行逻辑&#xff1a;在H5服务器配置中增加Cache-Control: no-cache或max-age0响应头&#xff0c;禁用静态资…...

【后端】【django】Django 自带的用户系统与 RBAC 机制

Django 自带的用户系统与 RBAC 机制 Django 自带的用户系统&#xff08;django.contrib.auth&#xff09;提供了 身份验证&#xff08;Authentication&#xff09; 和 权限管理&#xff08;Authorization&#xff09;&#xff0c;能够快速实现 用户管理、权限控制、管理员后台…...

SpringBoot MCP 入门使用

随着AI的火爆&#xff0c;最近发现MCP在未来确实大有可为&#xff0c;作为一名javaer怎么可以落后在历史洪流呢&#xff0c;根据官网和cursor也从零开始体验一下自定义mcp server。以后可以根据自己业务场景做出各种适合自身业务的工具。 至于什么是MCP 可以到https://modelcon…...

Java使用JDBC连接操作Sqlite 笔记250314

Java使用JDBC连接操作Sqlite 以下是使用 Java JDBC 连接和操作 SQLite 数据库的详细步骤&#xff1a; 1. 添加 SQLite JDBC 驱动 在项目中引入 SQLite JDBC 驱动依赖。 Maven 项目在 pom.xml 中添加&#xff1a;<dependency><groupId>org.xerial</groupId>…...

每日一题---腐烂的苹果(广度优先搜索)

腐烂的苹果 给定一个 nm nm 的网格&#xff0c;其中每个单元格中可能有三种值中的一个 0 , 1 , 2。 其中 0 表示这个格子为空、1 表示这个格子有一个完好的苹果&#xff0c;2 表示这个格子有一个腐烂的苹果。 腐烂的苹果每分钟会向上下左右四个方向的苹果传播一次病菌&…...

Visual Studio里的调试(debugging)功能介绍

参考 1- Introduction to Debugging | Basic Visual Studio Debugging&#xff08;这是一位印度博主视频&#xff0c;我下面做到笔记也主要参考她的视频&#xff0c;但不得不说口音太重了&#xff0c;一股咖喱味&#xff09; 目录 个人对调试浅显的认识和对调试的介绍逐行调…...

10.2linux内核定时器实验(详细编程)_csdn

我尽量讲的更详细&#xff0c;为了关注我的粉丝&#xff01;&#xff01;&#xff01; 本章使用通过设置一个定时器来实现周期性的闪烁 LED 灯&#xff0c;因此本章例程就使用到了一个LED 灯。 这里我们以毫秒为单位&#xff0c;所以要用msecs_to_jiffies这个函数。 如果是2s就…...

机器学习——正则化、欠拟合、过拟合、学习曲线

过拟合&#xff08;overfitting&#xff09;:模型只能拟合训练数据的状态。即过度训练。 避免过拟合的几种方法&#xff1a; ①增加全部训练数据的数量&#xff08;最为有效的方式&#xff09; ②使用简单的模型&#xff08;简单的模型学不够&#xff0c;复杂的模型学的太多&am…...

Java多线程与高并发专题——阻塞和非阻塞队列的并发安全原理是什么?

引入 之前我们探究了常见的阻塞队列的特点&#xff0c;在本文我们就以 ArrayBlockingQueue 为例&#xff0c;首先分析 BlockingQueue &#xff0c;也就是阻塞队列的线程安全原理&#xff0c;然后再看看它的兄弟——非阻塞队列的并发安全原理。 ArrayBlockingQueue 源码分析 …...

git 撤销某次提交的上交到远程服务器的commit提交,此提交后面的commit需要保留【deeepseek生成】

核心思路 使用 git rebase -i 重写提交历史&#xff0c;删除目标提交后强制推送到远程&#xff08;需谨慎操作&#xff09;。 操作步骤 1. 确认要删除的提交位置 # 查看提交历史&#xff08;找到要删除的提交哈希&#xff0c;例如 a1b2c3d&#xff09; git log --oneline查看提…...

docker composeyaml文件,什么是swap-space,内存不足硬盘来凑,--ipc=host,yaml文件、环境变量、容器报警健康检查

--swap-space 参数明确针对的是系统内存&#xff08;RAM&#xff09;&#xff0c;与显存&#xff08;GPU Memory&#xff09;无关。以下是关键区分&#xff1a; 内存&#xff08;RAM&#xff09; vs 显存&#xff08;GPU Memory&#xff09; 类型内存&#xff08;RAM&#xff…...

tsfresh:时间序列特征自动提取与应用

tsfresh&#xff1a;时间序列特征自动提取与应用 本文系统介绍了 tsfresh 技术在 A 股市场数据分析与量化投资中的应用。从基础特征提取到高级策略开发&#xff0c;结合实战案例&#xff0c;详细讲解了如何利用 tsfresh 构建量化投资策略&#xff0c;并优化风险控制&#xff0c…...