优选算法——双指针专题 3.快乐数 4.盛水最多的容器

优选算法——双指针专题 3.快乐数 4.盛水最多的容器

优选算法——双指针专题 3.快乐数 4.盛水最多的容器

一.快乐数

1.题目解析

[题目传送门](202. 快乐数 - 力扣(LeetCode))

在这里插入图片描述

2.原理解析

第一种情况:数最后变成1

在这里插入图片描述

第二种情况:无限循环但不是1

在这里插入图片描述

但两种都可以抽象成一种,有点像之前做过的带环链表

在这里插入图片描述

解法:快慢双指针

1.定义快慢指针

2.慢指针每次向后移动一步,快指针每次向后移动两步

3.判断相遇时候的值

3.代码实现

classSolution{public:intBitSum(int n)//返回每一位数上的平方和{int sum=0;while(n){int m=n%10; sum+=m*m; n=n/10;}return sum;}boolisHappy(int n){int slow=n,fast=BitSum(n);while(slow!=fast){ slow=BitSum(slow); fast=BitSum(BitSum(fast));}return slow==1;}};

二.盛水最多的容器

[题目传送门](11. 盛最多水的容器 - 力扣(LeetCode))

1.题目解析

在这里插入图片描述

2.原理解析

解法一:暴力枚举

时间复杂度O(N^2) 会超时

解法二:利用单调性,使用双指针

在这里插入图片描述

在这一组数中拿出一个区间 6,2,5,4

我们先用最两边的数算一个容积,然后小的那个固定住(也就是4) ,向内枚举

如果遇到比它小的数(也就是2),高度跟宽度都减小,v减小

如果遇到比它大的数(也就是5),高度不变(还是4),宽度减小,v减小

所以我们可以直接舍去小的那一个,在研究下一个区间

3.代码实现

classSolution{public:intmaxArea(vector<int>& height){int left=0,right=height.size()-1,ret=0;while(left!=right){int v=min(height[left],height[right])*(right-left); ret=max(ret,v);if(height[left]<height[right]) left++;else right--;}return ret;}};

Read more

Jimi:打造Java程序员专属的开源ClaudeCode

今年最火的技术是什么,AI;AI中最火的是什么,Agent;Agent中最火的是什么,AI-Coding;AI-Coding中最火的是什么,ClaudeCode。最近看了蚂蚁关于最受欢迎的135个AI开源项目统计,发现曾经作为移动互联网时代的编程王者Java,在AI时代已经彻彻底底被边缘化了。作为十年Java老鸟,想为Java开源生态贡献绵薄之力,于是便有了本文:https://github.com/Leavesfly/Jimi。 引言:为什么Java程序员需要自己的AI代理? 在AI辅助编程的浪潮中,Cursor、Claude Code等工具为开发者带来了革命性的体验。但对于Java生态的开发者来说,我们面临着一些独特的挑战: * 🔧 技术栈割裂:主流AI工具多用Python或ts实现,与Java项目集成困难 * 📚 企业级需求:需要支持Spring Boot、Maven、微服务等企业级框架 * 🔐 私有化部署:企业对代码安全有严格要求,需要可控的本地方案 * 🎯 深度定制:希望能深入理解并定制AI代理的行为逻辑 Jimi项目的诞生正是为了解决这些痛点——用

By Ne0inhk
OpenAI 开源模型 gpt-oss 本地部署详细教程

OpenAI 开源模型 gpt-oss 本地部署详细教程

OpenAI 最近发布了其首个开源的开放权重模型gpt-oss,这在AI圈引起了巨大的轰动。对于广大开发者和AI爱好者来说,这意味着我们终于可以在自己的机器上,完全本地化地运行和探索这款强大的模型了。 本教程将一步一步指导你如何在Windows和Linux系统上,借助极其便捷的本地大模型运行框架Ollama,轻松部署和使用 gpt-oss 模型。 一、准备工作:系统配置与性能预期 在开始之前,了解运行环境非常重要。本次部署将在我的个人电脑上进行,下面是推荐配置: * CPU: 现代多核 CPU,如 Intel Core i7 或 AMD Ryzen 7 系列 * 内存 (RAM): 32 GB 或更多 * 显卡 (GPU): 强烈推荐 NVIDIA GeForce RTX 4090 (24 GB 显存)。这是确保大型模型流畅运行与高效微调的理想选择。 * 操作系统: Linux 或 Windows

By Ne0inhk

【2026最新收集】github国内镜像站,高速访问

一、最新可用GitHub镜像站汇总 以下镜像站经实测验证,按“直接访问型”“文件加速型”“知名项目专属型”分类,标注实时可用性,方便按需选择。 1. 直接访问型镜像站(可浏览仓库、查看代码) 此类镜像站完全复刻GitHub界面,支持搜索、浏览仓库、查看代码文件,操作逻辑与官网一致,适合日常代码查阅。 镜像站序号访问方式镜像站链接当前状态备注1直接访问https://bgithub.xyz✅ 可用界面简洁,响应速度快,支持仓库搜索2直接访问https://gitclone.com✅ 可用附带Git Clone加速命令,适合开发者使用3直接访问https://github.ur1.fun✅ 可用加载速度快,支持Markdown文档渲染 推荐场景:需在线浏览仓库结构、查看代码细节、复制代码片段时,优先选择bgithub.xyz或kkgithub.com,加载速度和稳定性最优。 2. 文件加速型镜像站(专用于下载Release、压缩包) 此类镜像站主打文件下载加速,无需浏览完整仓库,

By Ne0inhk
如何在VS code中为GitHub Copilot 添加SKill

如何在VS code中为GitHub Copilot 添加SKill

官方链接:Use Agent Skills in VS Code 准备 这里如果要用VS code的Agent Skills记得更新VsCode,下面这个版本及之后的就可以使用 配置Skill Crtl + Shift + P找到设置并打开,搜索chat.useAgentSkills即可 在Github Copilot 聊天框中打开配置自定义智能体,点击+创建新的自定义智能体 之后需要选择是为这个项目创建Skill.md还是所有项目都可用的Skill.md了,之后写入自己的Skill内容就行。 这里是我自己添加的一个Skill.md 添加之后,就会在聊天这里选对应的Skill了,之后就会用这个Skill进行自己的相关分析 使用示例 好啦,快去创建自己的SKill吧!!

By Ne0inhk