- 博客(29)
- 收藏
- 关注
原创 Docker Compose
Docker Compose 简明指南 Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具,通过 YAML 文件配置所有服务。它解决了多容器应用的启动顺序控制、命令简化等问题,显著提升部署效率。 核心配置包括: services:定义应用服务(如 web、db) networks:配置容器网络环境 volumes:实现数据持久化 常用命令: docker-compose up -d:后台启动服务 docker-compose down:停止并删除容器 docker-compo
2026-03-30 13:55:16
438
原创 行为型模式
自定义spring框架前,先回顾一下spring框架的使用,从而分析spring的核心,并对核心功能进行模拟。数据访问层。定义UserDao接口及其子实现类业务逻辑层。定义UserService接口及其子实现类定义UserController类,使用main方法模拟controller层//创建spring容器对象//从IOC容器中获取UserService对象//调用UserService对象的add方法编写配置文件。
2025-09-21 15:55:15
512
原创 结构型模式
运用共享技术来有效地支持大量细粒度对象的复用。它通过共享已经存在的对象来大幅度减少需要创建的对象数量、避免大量相似对象的开销,从而提高系统资源的利用率。在面向对象程序设计过程中,程序员常常会遇到这种情况:设计一个系统时知道了算法所需的关键步骤,而且确定了这些步骤的执行顺序,但某些步骤的具体实现还未知,或者说某些步骤的实现与具体的环境相关。
2025-09-20 16:10:07
988
原创 结构型模式
由于某些原因需要给某对象提供一个代理以控制对该对象的访问。这时,访问对象不适合或者不能直接引用目标对象,代理对象作为访问对象和目标对象之间的中介。Java中的代理按照代理类生成时机不同又分为静态代理和动态代理。静态代理代理类在编译期就生成,而动态代理代理类则是在Java运行时动态生成。动态代理又有JDK代理和CGLib代理两种。如果去欧洲国家去旅游的话,他们的插座如下图最左边,是欧洲标准。而我们使用的插头如下图最右边的。因此我们的笔记本电脑,手机在当地不能直接充电。
2025-09-20 10:20:59
825
原创 创建型模式
用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象。将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。分离了部件的构造(由Builder来负责)和装配(由Director负责)。从而可以构造出复杂的对象。这个模式适用于:某个对象的构建过程复杂的情况。由于实现了构建和装配的解耦。不同的构建器,相同的装配,也可以做出不同的对象;相同的构建器,不同的装配顺序也可以做出不同的对象。也就是实现了构建算法、装配算法的解耦,实现了更好的复用。
2025-09-19 14:17:39
1030
原创 设计模式概述
类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。类图不显示暂时性的信息。类图是面向对象建模的主要组成部分。
2025-09-19 12:26:16
908
原创 Swin-Transformer流程
Swin Transformer是2021年微软研究院发表在ICCV上的一篇文章,并且已经获得ICCV 2021 best paper的荣誉称号。Swin Transformer网络是Transformer模型在视觉领域的又一次碰撞。该论文一经发表就已在多项视觉任务中霸榜。该论文是在2021年3月发表的,现在是2021年11月了,根据官方提供的信息可以看到,现在还在COCO数据集的目标检测以及实例分割任务中是第一名(见下图State of the Art表示第一)。原论文图。
2024-12-09 21:26:53
726
原创 回溯法理解
回溯法其实就是递归,并且用的是暴力解法,可以将回溯法的过程想象成二叉树的深度优先遍历,可以解决的问题有组合,切割,子集,排列和棋盘问题。可以参考实现递归函数的方法。
2024-11-16 15:32:44
206
原创 盒子里的气球
在其中任何一个点上放一个很小的气球,那么这个气球会一直膨胀,直到接触到其他气球或盒子的边界。问按照怎样的顺序在这N个点上放置气球,才使放置完毕后所有气球占据的总体积最大.适用于求解组合优化问题,当问题的解空间可以通过逐步构建的方式进行探索时,回溯法是一种有效的方法。在这个问题中,放置气球的顺序就是需要逐步构建的解,通过尝试不同的顺序,可以找到总体积最大的解。需要确定在长方体盒子中的若干个点上放置气球的顺序,使得所有气球放置完毕后占据的总体积最大。此时,最佳放置顺序就是使得所有气球占据总体积最大的放置顺序。
2024-11-09 10:48:42
421
原创 图的m着色问题与图的最大团问题有何关系,你能否利用这个关系改进最大团问题的上界?
通过分析可以发现,颜色A对应的三个顶点构成的集合更有可能是最大团的候选,因此可以将最大团问题的上界设定为3。在后续求解最大团问题的过程中,如果当前已经找到的团的大小为2,并且正在考虑是否将一个新的顶点加入团中,如果这个顶点不属于颜色A对应的集合,那么可以根据上界进行剪枝,不再考虑将这个顶点加入团中,因为即使加入成功,团的大小也不可能超过上界3。综上所述,图的(m)着色问题与图的最大团问题存在一定的关系,可以利用这种关系来改进最大团问题的上界,从而提高求解最大团问题的效率。
2024-10-18 21:32:14
451
原创 DAG,Dijkstra,Bellmen-ford原理、应用及其异同
Bellman-Ford 算法的时间复杂度为O(nm) ,其中n是顶点数,m是边数。Bellman-Ford 算法可以处理含有负权边的图的单源最短路径问题,并且可以检测负权回路。Dijkstra 算法的时间复杂度一般为O((n+m)log n) ,使用优先队列实现时。DAG 主要用于有向无环图中的拓扑排序和相关问题,不是专门用于求解最短路径问题。对于有 个顶点和 条边的图,DAG 的拓扑排序时间复杂度为O(n+m)。Dijkstra 算法适用于求解无负权边的图的单源最短路径问题。
2024-10-11 19:49:37
528
原创 李宏毅深度学习与机器学习第三讲
我们可以将图片看作3层,即核大小(kernel size)为3,选取图片一部分作为神经元(neuron)进行侦测,判断该部分是什么,这部分称为感受野(receptive field),设置每个感受野之间的步长(strde),则图片每一个区域都有感受野覆盖。
2024-09-14 20:01:29
339
原创 李宏毅深度学习第二讲
RMSProp算法是在AdaGrad算法的基础上,进一步在学习率的方向上进行优化: AdaGrad算法中,由于历史梯度的累积可能会导致学习率不断减小,从而影响算法的收敛速度。根据每个参数在训练过程中的历史梯度信息来调整学习率,从而使得每个参数的学习率可以自适应地调整,更好地适应不同参数的特性。对每个参数的学习率进行适应性调整,使得在训练过程中梯度较大的参数的学习率变小,而梯度较小的参数的学习率变大。在更新梯度时保留原来的梯度,由原来的梯度和动量矢量合成新的梯度,原来的梯度称为动量。
2024-09-14 17:33:56
242
原创 机器学习-数据集
load和fetch返回的数据类型datasets.base.Bunch(字典格式)subset:‘train’或者’test’,‘all’,可选,选择要加载的数据集。训练集的‘训练’,测试集的‘测试’,两者的‘全部’sklearn数据集返回值介绍。
2024-03-13 13:51:45
1191
转载 springMVC开发流程
index.jspDispatcherServletSpringMVC的处理器是一个普通的方法。one.jsp DispatcherServletSpringMVC的处理器是一个普通的方法。在提交请求中,保证请求参数的名称与实体类中成员变量的名称一致,则可以自动创建对象,则可以自动提交数据,自动类型转换,自动封装数据到对象中.return "main";
2023-04-30 10:28:14
369
原创 面向切面编程理解
/3.通知(Advice),通知又叫做增强。就是具体增强的那个代码。//切面:切点(Pointcut)+通知(Advice)//1.连接点(Joinpoint)描述的是位置。//2.切点(Pointcut)本质上就是方法。// ■ 前置通知。// ■ 后置通知。// ■ 环绕通知。// ■ 异常通知。// ■ 最终通知。
2023-04-26 15:59:17
140
原创 类之间的关系
相比来说:泛化关系的耦合度高于关联关系。优先选择使用关联关系。张三 has a apple。泛化关系:继承 is a。关联关系:has a。
2023-04-25 21:30:53
118
原创 Request获取请求数据
HTTP请求数据总共分为三部分内容,分别是请求行、请求头、请求体,对于这三部分内容的数据,分别该如何获取,首先我们先来学习请求行数据如何获取?
2022-09-27 23:47:05
728
原创 request和respoose
对于上述所讲的内容,我们通过一个案例来初步体验下request和response对象的使用。启动成功后就可以通过浏览器来访问,并且根据传入参数的不同就可以在页面上展示不同的内容:对于上述结论,要想验证,可以编写一个Servlet,在方法中把request对象打印下,就能看到最终的对象是不是RequestFacade,代码如下:启动服务器,运行访问,得到运行结果小结HTTP请求数据总共分为三部分内容,分别是请求行、请求头、请求体,对于这三部分内容的数据,分别该如何获取,首先我们先来学习请求行数据如何获取?
2022-09-27 23:29:06
42
原创 Gitee远程仓库配置
win+R输入cmd进入命令界面进入存放目录地址或在目录地址输入cmd进入。说明:仓库地址打开你要连接的仓库,点击下载选择HTTPS复制地址。git remote add origin"仓库地址 "完成配置,看到本地的文件上传到Gitee。git commit -m "初始化"Git教程及和gitee远程仓库配置。进入官网点击注册,填写信息进行注册。登录主页点击加号新建仓库。
2022-09-25 19:37:16
2603
3
原创 Git教程及和gitee远程仓库配置
某个项目需要一个很复杂的功能,进行开发时出现了bug,但是代码已经改的面目全非,这时我们可以通过Git来还原代码。Git在我们开发是有很多作用,是进行维护和开发的重要工具,具体我们可以在以下场景中使用Git。Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比。
2022-09-25 17:40:54
1655
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅