leedcode笔记
对于又重复字母查找异位词**滑动窗口**通过哈希表把要确定的字符串p比如“abc”,如果出现有字母则进行记数加一再通过遍历给定的字符串s如果有则对应记字母的记数减一若小于0说明这个左右指针对应的区间不符合p的字母可能是多了次数也可能不包含则需要将左指针加加重新找如果right-left1刚好等于p的大小则弹出左指针即这个初始索引说明找到有**“对于有重复字母的题”**一般要使用哈希表对字母出现的次数进行维护“对于三数之和或者累加”先判断一下是否可以排序如果可以排序那么先排序不能排序比如“和为K的子数组前缀之和数组通过这个方法减少变量或者两数之和都可以通过target-nums[i]查找是否有对应的数”“合并区间”对于区间有重叠的区域需要进行合并即需要对当前区间的右端点和下一个区间的左端点进行判断若是右端点大于左端点更新这个合并后的右端点左端点不变push_back先造临时再塞进容器emplace_back直接在容器里造对象。**“右轮K个数”**这用到了「负负得正」的想法把一个子数组反转两次子数组不变。相交链表解题思路需要求出相交点通对于两个链表分为相交部分和不相交部分对于xz yyzx如果对于一个链表如果遍历完了就从另一个链表的头指针重新开始矩阵“矩阵置为0”如果有一个元素是0那么整个元素的这一行和这一列全置为0解题思路首先需要设置两个数组分别表示行的列的零的标志位先通过双层循环若等零则将这一行这一列的标志位为true;然后再通过一个双层循环根据整个标志位进行赋值0链表相交链表求交点对于两个链表来说如果有交点那么除去相同部分c,只有a有的部分a1只有b有的部分b1.那么a1cb1b1ca1。也就是说遍历链表若两个对应指针不相等那么遍历a遍历完到b的头节点b遍历完到a的头节点。两个最终走的距离是一样的那么最终相等时即是交点。反转链表先定义一个空链表作为反转链表将给定的链表节点指向前一个节点(在反转链表)class Solution {public:ListNode* reverseList(ListNode* head) {ListNode* pre nullptr;ListNode* cur head;while(cur){ListNode* nxt cur-next;cur-nextpre;precur;curnxt;}return pre;}};回文链表第一步判断找链表的中间节点第二步把中间节点到链表末尾反转第三步对两个链表的头节点进行比较若相同则是回文链表若不是则返回false;删除倒数第n个节点左右指针滑动窗口先让右指针右移n个单位然后左右指针同时开始移动当右指针到头时左指针的下一个就是倒数第n个节点然后需要将这个节点删除指向两两交换节点需要用一个哨兵节点来进行假如是1234现在要换成2143那么分成两部分现将哨兵的空节点指向2再指向11再指向3迭代深拷贝一个链表在对应节点创建新的节点比如abc,创建之后为a,a’,b,b’,c,c’.将对应的随机指针复制将这个链表通过dummy哨兵拆分成两个链表二叉树遍历对于二叉树的题首先需要判断这个树是否是空如果是空直接返回if(!root)return;二叉树有三种常见的遍历方式前序遍历根-左-右。先获取根节点值再访问根的左子树最后访问根的右子树。中序遍历左-根-右。先访问根的左子树再获取根节点值最后访问根的右子树。后序遍历左-右-根。先访问根的左子树再访问根的右子树最后获取根节点值。二叉树中序遍历递归voidinorder(TreeNode*root,vectorintres){if(!root){return;}inorder(root-left,res);res.push_back(root-val);//在第一行就是前序在最后一行就是后序inorder(root-right,res);}翻转二叉树首先把叶子节点反转再把根节点对应的节点翻转TreeNode*invertTree(TreeNode*root){if(rootnullptr){returnnullptr;}TreeNode*leftinvertTree(root-left);TreeNode*rightinvertTree(root-right);root-leftright;root-rightleft;returnroot;对称二叉树需要判断根节点的左右两部分是否一致即判断root-leftroot-right;boolisSameTree(TreeNode*p,TreeNode*q){if(pnullptr||qnullptr){returnpq;}returnp-valq-valisSameTree(p-left,q-right)isSameTree(p-right,q-left);}即所有的部分都需要一致val,left,right二叉树最大深度需要调用maxDepth把左节点和右节点的最大深度求出来再加一max(maxDepth(root-left), maxDepth(root-right)) 1;图论岛屿问题我们可以将二维网格看成一个无向图竖直或水平相邻的 1 之间有边相连。为了求出岛屿的数量我们可以扫描整个二维网格。如果一个位置为 1则以其为起始节点开始进行深度优先搜索。在深度优先搜索的过程中每个搜索到的 1 都会被重新标记为 2。最终岛屿的数量就是我们进行深度优先搜索的次数。深拷贝和浅拷贝普通拷贝浅拷贝只复制节点指针新旧链表共享原始节点共享资源深拷贝Deep Copy为链表每一个节点都新建一份内存复制节点里面的数据新链表所有节点都是全新对象和原链表完全独立修改新链表不会影响原链表。资源独立DFS 深度优先搜索Depth‑First Search核心思想一条路走到黑走不通再回溯优先往深处探索而不是横向遍历。类比走迷宫随便选一个方向一直往前走碰到墙 / 走过的点就退回来换另一个方向继续往下走。工作流程访问当前节点标记已访问避免重复走递归遍历它还没访问过的邻接节点所有子节点都走完函数返回回溯BFSBFS队列逐层向外求最短路径首选​DFS栈/递归一条路走到黑适合遍历全部方案、回溯递归和迭代迭代循环原地干活​- 递归自己调自己拆分子问题靠调用栈保存状态(基线条件)

相关新闻

鸿蒙 PC 上可用的 AI Agent 工具汇总(持续更新)

鸿蒙 PC 上可用的 AI Agent 工具汇总(持续更新)

总览 工具类别交互方式是否开源版权归属Hermes Agent通用类TUI/Web开源Nous ResearchOpenDesk通用类TUI/GUI开源OpenHarmony-RobotBitFun通用类GUI开源CWingWorkBuddy通用类GUI闭源Tencent CloudClaude Code编程类TUI/Web闭源AnthropicCodex CLI编程类TUI开源OpenAIOpenCode编…

2026/10/19 22:47:47 阅读更多 →
黑龙江边境、林区、矿区应急通信保障体系|断网场景自组网、加密通信、政采项目落地全方案

黑龙江边境、林区、矿区应急通信保障体系|断网场景自组网、加密通信、政采项目落地全方案

摘要:黑龙江地域狭长,边境线漫长、林区覆盖广阔、矿产资源集中,同时汛期洪涝、林区火情、暴雪灾害等突发事件频发,常规公网通信、传统专网通信极易在应急场景中断。应急通信是抢险救援、边境管控、林区防火、矿区应急的核心保障&a…

2026/10/19 23:28:21 阅读更多 →
石头A30 Pro Combo洗地机深度评测:双滚刷与热水自清洁如何定义性价比

石头A30 Pro Combo洗地机深度评测:双滚刷与热水自清洁如何定义性价比

最近想买洗地机的朋友,一定在各种评测和推荐里看到过“石头A30 Pro Combo”这个名字。它被冠以“性价比之王”、“无线洗地机卷王”等称号,价格也确实比很多旗舰机型便宜不少。但问题来了:它到底是真的“物超所值”,还是通过牺牲某…

2026/10/19 11:28:29 阅读更多 →

最新新闻

多摩川绝对式编码器读取:STM32与RS485通信实现及伺服调试避坑指南

多摩川绝对式编码器读取:STM32与RS485通信实现及伺服调试避坑指南

简介:基于STM32F429的多摩川TS5668N21编码器读取程序完整源码包,面向工业自动化、电机控制与精密定位领域的嵌入式软硬件开发者。工程围绕ADM485(RS-485)半双工通信协议展开,涵盖STM32CubeMX引脚分配、时钟树与UART参数…

2026/10/20 20:23:58 阅读更多 →
汇编ADC指令详解:从进位标志CF到多字节加法的底层原理

汇编ADC指令详解:从进位标志CF到多字节加法的底层原理

学汇编一段时间后,大家基本都会遇到ADC这条指令。说实话,这条指令在指令表里毫不起眼,最多被解释成一句"带进位加法",但真到了实战里,你会发现它远比表面复杂:写大数加法要用它,调试进…

2026/10/20 20:23:58 阅读更多 →
降AI率实操指南:从原理到工具,教你打造真人感文本

降AI率实操指南:从原理到工具,教你打造真人感文本

1. 先弄明白“降AI率”到底在降什么最近不少同学来找我,张口就是“哥,有没有降AI率的工具推荐?”。一开始我以为是小众需求,结果问了一圈才发现,这事已经成了很多人的刚需。无论是交课程论文、写实训报告,还…

2026/10/20 20:23:58 阅读更多 →
大模型知识更新利器:RAG检索增强生成原理与实战指南

大模型知识更新利器:RAG检索增强生成原理与实战指南

大模型知识更新的老难题,RAG(Retrieval-Augmented Generation,检索增强生成)确实是我近两年见过最实用的解法。它给大模型开了一场“开卷考试”,让模型不再凭记忆硬答,而是先翻书、再答题,从根上…

2026/10/20 20:23:58 阅读更多 →
纯HTML+CSS重构游戏平台首页:Flexbox与Grid布局实战

纯HTML+CSS重构游戏平台首页:Flexbox与Grid布局实战

1. 为什么我要拿一个游戏平台首页做重构练习先说说这个项目的由来。我在带新人的时候经常遇到一个尴尬情况:简历上写着“精通 HTML 和 CSS”,丢过来一个静态页面,结构全是 div 套 div,类名清一色box1、box2、left、right&#xff…

2026/10/20 20:23:58 阅读更多 →
Jenkinsfile核心难点:作用域、凭据、并行与错误处理四大陷阱

Jenkinsfile核心难点:作用域、凭据、并行与错误处理四大陷阱

1. 这不是写脚本,是在给流水线“立规矩”:Jenkinsfile 的真实定位与核心难点本质很多人第一次打开 Jenkinsfile,下意识把它当成“写个 shell 脚本就行”,结果跑起来要么阶段莫名失败、要么环境变量死活不生效、要么并行任务互相污…

2026/10/20 20:22:55 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →