- 博客(53)
- 收藏
- 关注
原创 牛客周赛 Round 93题解(个人向A-E)
本文是牛客周赛 Round 93 的题解,涵盖了 A 到 E 题的解题思路和代码实现。A 题是简单的模拟题,直接按题意比较 2^n 和 n^3 的大小即可。B 题要求判断字符串中是否存在特定模式的子串,使用 substr 函数和条件判断即可解决。C 题通过分析两人位置的相对关系,判断是否可以通过放置障碍物使两人到达终点。D 题是思维题,通过优先队列和贪心策略,确保处理后的数组字典序最大。E 题则通过分类讨论和数学公式,计算满足条件的子集数量。每道题都提供了详细的代码实现和解题思路。
2025-05-20 21:06:50
347
3
原创 彻底解决docker代理配置与无法拉取镜像问题
IP(Internet Protocol):负责数据包的寻址和路由。TCP(Transmission Control Protocol):面向连接,可靠传输,保证数据顺序和完整性。UDP(User Datagram Protocol):无连接,传输快但不保证可靠。HTTP/HTTPS:网页访问协议,HTTPS 是加密版本。DNS(Domain Name System):域名解析,将域名转换成 IP 地址。DHCP:动态分配 IP 地址。
2025-05-18 13:11:55
1667
2
原创 Windows系统上本地部署dify并接入ollama大模型
Dify 是一个基于大语言模型的智能应用平台,致力于帮助用户快速构建和部署各种智能对话机器人和应用。它支持结合检索技术的生成模型(即 RAG,Retrieval-Augmented Generation),通过在生成回答的同时检索外部知识库,提升回答的准确性和覆盖范围。Dify 平台使得用户能够方便地训练、管理并调用自定义大模型,广泛适用于客服系统、知识问答和智能助手等场景。相比传统只依赖生成模型的方式,Dify 利用检索增强,能够让模型更好地利用外部信息,提升实用性和智能水平。
2025-05-18 00:41:08
786
1
原创 拒绝繁琐概念 ‖ 零基础基于pytorch手写一个神经网络
本文以零基础用户为目标,通过一个简单的手写数字识别项目,快速入门PyTorch框架。PyTorch以其简洁的代码和易上手的特性,成为深度学习领域的常用工具。文章采用MNIST数据集,包含7万张手写数字图片,用于训练和测试神经网络。通过将图片像素重新排列为一维阵列,并逐层计算节点值,神经网络能够识别和处理图像信息,最终输出数字识别的概率。文章详细介绍了神经网络的构建过程,包括激活函数的使用和参数的调整,并通过代码示例展示了如何实现这一过程。通过训练,神经网络的识别准确率从初始的0.08提升到0.95。文章旨在
2025-05-13 13:29:04
1049
1
原创 vue基本架构学习入门
一个典型的Vue 3项目(使用Vite创建)的目录结构包括根目录下的package.json和vite.config.js,以及public/和src/文件夹。public/存放静态资源,如网站图标,而src/是开发的核心区域,包含assets/(图片、样式)、components/(可复用组件)、views/(页面级组件)、router/(路由管理)、store/(全局状态管理)、utils/(工具函数)、services/(接口请求封装)、App.vue(应用根组件)和main.js(程序入口)。pac
2025-05-12 20:53:04
858
3
原创 快速使用 Mermaid 语法在 draw.io 中绘制流程图与 ER 图
本文介绍了如何利用 Mermaid 语法在 draw.io 中快速绘制流程图和 ER 图。Mermaid 是一种基于文本的图形绘制工具,支持多种图形类型,语法简洁,适合开发者和技术写作者使用。通过将 Mermaid 代码导入 draw.io,用户可以高效生成图形,并利用 draw.io 的强大功能进行进一步优化。文章详细说明了如何在 draw.io 中导入 Mermaid 代码,并提供了流程图和 ER 图的示例代码。对于不熟悉 Mermaid 语法的用户,建议使用 AI 工具生成所需代码。这种方法不仅提高了
2025-05-12 19:20:41
2937
原创 如何在pycharm中创建管理虚拟环境,及其遇到的一些常见问题的解决
在PyCharm中创建虚拟环境的步骤如下:首先,正常创建一个项目,不选择虚拟环境。接着,在项目的终端中使用命令 python -m venv venv 创建虚拟环境,项目目录下会生成一个“venv”文件夹。通过执行 .\venv\Scripts\Activate.ps1 激活虚拟环境,使用 deactivate 退出。安装依赖时,执行 pip install -r requirements.txt。若虚拟环境的Python解释器无法识别,可删除并重新创建虚拟环境,手动设置解释器,并安装 setuptools
2025-05-12 19:07:21
483
原创 java高级:自定义注解,反射和动态代理
注解(Annotation)是 Java 5 引入的一种元数据机制,允许开发者为类、方法、字段等代码元素添加信息。编译器和运行时工具可以读取这些信息以执行特定逻辑。@Override@Override 是一个标准注解,用于提示编译器该方法是重写父类方法。通过自定义注解,我们可以为代码元素打上业务相关的标签,并结合反射机制,在运行时解析注解内容,从而实现配置驱动或声明式编程。这在日志打印、权限控制、参数校验、事务处理等场景中尤为常见。:指定注解在运行时可被 JVM 读取。。
2025-04-22 20:57:43
667
原创 深入浅出理解 IOC(控制反转)与 DI(依赖注入)
控制反转(Inversion of Control,IoC)是一种设计原则,将对象的创建和依赖管理从应用程序代码中抽离,交由容器(如 Spring)负责。依赖注入(Dependency Injection,DI)是实现 IoC 的一种方式。通过 DI,容器在运行时将所需的依赖对象注入到目标对象中,而不是由目标对象自行创建。在 Spring 中,Bean是由容器管理的对象。@Component:通用组件类。@Service:业务逻辑组件。:数据访问组件。。
2025-04-22 19:25:41
965
1
原创 一套基础的大模型训练命令解析
用 16 帧 256x256 的视频片段在 bf16 精度和 AMP 优化下使用 AdamW 优化器和余弦退火学习率从一个已有的 CausalVAE 模型出发一步步训练到 50000 步,并每 1000 步保存一次结果小白建议:如果你是第一次接触训练模型,可以尝试先只改、、 这几个简单的参数,逐步理解整个过程。
2025-04-22 19:06:59
405
原创 基础数据结构大合集
实现一个单链表,链表初始为空,支持三种操作:向链表头插入一个数;删除第 k 个插入的数后面的数;在第 k个插入的数后插入一个数。现在要对该链表进行 M次操作,进行完所有操作后,从头到尾输出整个链表。注意:题目中第 k 个插入的数并不是指当前链表的第 k个数。例如操作过程中一共插入了 n 个数,则按照插入的时间顺序,这 n 个数依次为:第 1 个插入的数,第 2 个插入的数,…第 n 个插入的数。输入格式第一行包含整数 M,表示操作次数。
2025-04-19 10:52:01
611
原创 最小生成树
在一个连通无向图中,选出若干条边连接所有顶点,且边权和最小且不能有环,这形成的子图叫做最小生成树。生成树:包含图中所有点的树(无环、连通)最小生成树:在所有生成树中,边权和最小的那一个。
2025-04-18 20:43:33
886
原创 基础算法学习:高精度
可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。给定两个非负整数(不含前导 0)A 和 B,请你计算 A×B 的值。给定两个非负整数(不含前导 0)A,B,请你计算 A/B的商和余数。给定两个正整数(不含前导 0),计算它们的差,计算结果可能为负数。共两行,第一行包含整数 A,第二行包含整数 B。共两行,第一行包含整数 A,第二行包含整数 B。共两行,第一行输出所求的商,第二行输出所求余数。共一行,包含 A×B 的值。共两行,每行包含一个整数。共两行,每行包含一个整数。
2025-04-18 20:42:48
390
原创 基础算法学习:离散化
将一组不连续、无规律或取值范围很大的数据,,使得我们可以使用数组下标来处理原本无法直接处理的值。比如:原数组中有1000000000,我们不可能开 10 亿大小的数组,这时就需要离散化。
2025-04-18 20:41:12
219
原创 基础算法学习:单调队列
单调队列是一种数据结构,通常用于解决一些滑动窗口或者范围查询的问题,特别是在处理需要找出滑动窗口中最大值或最小值的问题时。它可以有效地实现这些操作,具有较高的时间效率。
2025-04-18 19:28:48
744
原创 基础算法学习:kmp
KMP(Knuth-Morris-Pratt)算法是一种用于字符串匹配的高效算法,它可以在给定的文本中查找一个模式串(子串)的所有出现位置。与暴力算法不同,KMP算法通过预处理模式串来提高匹配效率,避免了重复的字符比较。
2025-04-18 19:28:29
952
4
原创 质数问题与约数问题
给定 n个正整数 ai,判定每个数是否是质数。输入格式第一行包含整数 n。接下来 n行,每行包含一个正整数 ai。输出格式共 n行,其中第 i行输出第 i个正整数 ai是否为质数,是则输出 Yes,否则输出 No。数据范围1≤n≤100,输入样例:226输出样例:YesNo用试除法判断一个数n是不是质数的时间复杂度为O(sqrt(n)).
2025-04-18 19:27:42
708
1
原创 基础算法学习:区间合并
区间合并算法用于解决一类经典问题:给定若干个区间,要求将它们合并成最小的非重叠区间。常见的应用场景包括时间区间的合并、区间覆盖问题等。
2025-04-17 20:49:54
308
原创 基础算法学习:位运算
位运算是对数字的二进制位进行的操作,常用于需要高效处理数据、节省时间和空间的场景。通过位运算,我们可以实现许多常见的算法优化,尤其是在与数学和计算机内部存储结构相关的算法中。下面我们将介绍几种常见的位运算及其应用。位运算是计算机底层的基础操作,它在很多算法中起到至关重要的作用,特别是在需要高效处理数据的场景中。掌握位运算能让你在处理某些问题时更加得心应手,提高程序的效率。位运算操作符常用且直接,理解其原理后可以应用于实际问题中。位运算常常用于优化时间复杂度或空间复杂度,是面试中常见的考点之一。
2025-04-17 20:49:15
789
原创 基础算法学习:快速排序与归并排序
快速排序是一种分治法(Divide and Conquer)算法。它的基本思想是通过选择一个基准元素(pivot),将数组分成两个子数组,使得左边的子数组都比基准小,右边的子数组都比基准大,然后递归地对这两个子数组进行排序。
2025-04-17 20:48:35
852
原创 基础算法学习:单调栈
单调栈(Monotonic Stack)是一种特殊的栈数据结构,它在处理某些问题时可以提高时间效率。它的核心思想是:栈中的元素保持单调递增或单调递减的顺序。通常在处理类似“下一个更大元素”或者“最大值区间”之类的问题时非常有效。
2025-04-17 20:36:20
431
原创 C风格字符串处理
这些 C 风格字符串函数提供了直接且高效的方式来处理字符串。理解它们的用法能够帮助你在 C/C++ 编程中灵活操作字符串,同时也需要注意一些潜在的内存管理问题,如缓冲区溢出。
2025-04-17 20:32:06
284
原创 基础算法学习:双指针
双指针是一种非常常见的算法技巧,通常用来解决数组或字符串中的一些问题。简单来说,就是我们用两个指针(变量)同时指向数组或者字符串中的不同位置,按照一定的规则来移动这些指针,从而达到解决问题的目的。
2025-04-17 20:27:07
199
原创 从 Javase 到 JavaWeb(学完javase基础之后你该继续学什么?)
学完 Java 基础之后,很多同学都会好奇:“怎么用 Java 写一个能在网页上访问的程序?”这就是JavaWeb要解决的问题。JavaWeb 简单来说,就是让你写的 Java 程序可以变成一个网站后端,能和用户在网页上进行交互,比如登录、注册、发布信息等等。页面展示:也就是我们看到的网页,按钮、输入框、图片等内容,通常由 HTML、CSS 和 JavaScript 来完成。后台处理。
2025-04-17 20:13:01
528
1
原创 前后端分离项目中的跨域问题全解:以 Vue + Spring Boot 为例
这两个端口不一致就构成了“跨域请求”。**CORS(Cross-Origin Resource Sharing)**是浏览器与服务器之间的一种协议,允许浏览器向服务器发起跨域请求。它的核心是由后端服务器设置 HTTP 响应头,告诉浏览器:“这个请求我允许”。场景推荐方式本地开发Vue 代理 + Spring CORS 注解或全局配置项目上线部署使用 Nginx 做反向代理微服务架构使用 Spring Cloud Gateway 配置 CORS。
2025-04-17 19:45:12
1115
原创 前后端是怎么对接起来的?( Vue 与 Spring Boot)
在早期的 Web 应用开发中,前端页面和后端逻辑常常紧密耦合在一起。例如,一个 Java Web 项目往往采用JSP 页面 + Servlet 或 Spring MVC Controller的模式。用户请求一个页面,服务器会在后端拼接 HTML 并将整页内容返回给浏览器。页面渲染在服务端完成,前端只负责展示结果;前端和后端代码耦合严重,一处改动往往需要同时修改后端 JSP 文件与 Controller 逻辑;开发效率受限,前端无法独立开发或测试功能,后端压力较大;
2025-04-17 19:31:06
2738
原创 通过命令行操作把 本地IDE 项目上传到 GitHub(小白快速版)
git initgit add .git commit -m "说明"git remote add origin 仓库地址git add . →git commit →git push有了这个流程,你就可以用最简单的方式把代码上传到 GitHub,再也不用每次都压缩发给别人啦!
2025-04-15 20:40:02
435
2
原创 从 Spring Boot 到 Django —— 后端开发技术类比学习
Django,一个成熟而简洁的 Web 框架时,我们在学习这个框架的过程中不仅可以体验 Python 的便捷生态,更能发现 Django 与 Spring Boot 在思想上存在许多相似之处。本文将帮助你从熟悉的 Spring Boot 框架出发,通过逐步对比、深入剖析 Django 的核心目录结构和工作原理,实现无缝上手。
2025-04-15 20:08:06
1438
原创 GDScript快速入门(适合有其它编程语言基础)
GDScript 是 Godot 引擎自带的高级、动态类型的编程语言,语法类似于 Python,但专为游戏开发进行了优化。它与 Godot 的节点系统紧密结合,使得开发者可以更高效地控制游戏逻辑。当需要通知其他节点时,使用。
2025-04-15 19:27:11
1149
2
原创 java开发常用注解
自定义注解通常由@interface 声明,可包含成员变量和默认值。@AuditLog(action = "转账", description = "记录转账操作")// 转账逻辑例如,用于方法参数的校验或提示。// 更新逻辑自定义实现点击事件注解,通过 APT 和动态代理技术将点击事件自动映射到对应方法上。Class<?@Override// 通过反射和动态代理实现事件绑定注解处理工具会扫描@OnClick 注解,并生成或动态代理代码实现点击监听,从而减少样板代码【
2025-04-01 19:00:10
1075
原创 基于 Ollama DeepSeek、Dify RAG 和 Fay 框架的高考咨询 AI 交互系统项目方案
本项目旨在构建一个智能化的高考咨询助手,结合 AI 大模型、知识增强(RAG)和 3D 数字人交互,为用户提供智能高考问答、志愿填报建议、政策解读等功能。Fay 不直接提供 3D 数字人功能,而是作为前端界面,连接 AI 和数字人。Fay 作为界面管理工具,可以负责用户交互(输入框、语音按钮等)。结合语音合成(TTS),实现 AI 语音播报。3D 数字人用于展示 AI 生成的回答。结合表情动画,实现自然的交互体验。
2025-04-01 18:58:16
1139
2
原创 github ssh方式推送代码
接下来,需要将 Git 仓库的远程 URL 更改为 SSH 方式,而不是 HTTPS。首先,你需要确认本地是否已经生成了 SSH 密钥。如果提示设置密码(passphrase),你可以选择为空,或者设置一个密码。为了确保你的 SSH 配置正确,可以测试是否能够成功连接 GitHub。这表示你的 SSH 密钥已正确配置并能够成功连接到 GitHub。然后会提示你选择保存密钥的路径,一般直接按回车键,默认路径是。完成后,你的 SSH 密钥会生成在。这会显示你的公钥,复制显示的内容。中填写一个名称(例如。
2025-03-31 20:47:05
777
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人