自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 堆排序 11

堆(Heap)是一种特殊的完全二叉树类型性质用途大顶堆每个节点 ≥ 子节点升序排序小顶堆每个节点 ≤ 子节点降序排序CopyCopied!大顶堆示例:10/ \5 3/ \ / \2 4 1 0数组存储(从索引 1 开始):索引: 0 1 2 3 4 5 6 7数组: [_, 10, 5, 3, 2, 4, 1, 0]// 最大数据量int n;// 实际元素个数int a[N];// 存储堆的数组(从索引 1 开始)操作函数作用向下调整down()维护堆性质。

2026-04-08 16:23:30 297

原创 从 LeetCode 34 彻底搞懂二分查找:边界控制、核心模板与避坑指南

/ 上取整// 满足条件 → 答案在 [mid, right]// 不满足 → 答案在 [left, mid-1]你提供的代码已经具备了高质量题解的骨架。明确你要找的是哪种边界(第一个满足?最后一个满足?严格匹配mid取整与区间更新规则循环结束后务必二次验证建议将双模板在 LeetCode 34、35、153 上各手写 3 遍,形成肌肉记忆。当你再看到“单调”、“最值”、“存在性”等关键词时,二分自然会浮现在脑海。📚延伸练习35. 搜索插入位置74. 搜索二维矩阵。

2026-04-07 19:05:41 337

原创 二叉树的学习

存储:竞赛中优先使用l[]r[]数组模拟孩子节点遍历:顺序只由根节点的输出时机决定递归:必须包含终止条件(空节点时return重建:必须包含中序遍历,按根节点划分左右子树后递归求解这道题虽然简单,但完美覆盖了蓝桥杯二叉树的核心考点二叉树的数组存储(孩子表示法)竞赛中 90% 的二叉树题目都使用这种写法。前序遍历的递归实现遍历是二叉树一切操作的基础。字符型节点的处理方式蓝桥杯高频出现字符型二叉树。递归终止条件的判断递归题必考点,空节点判断错误直接爆栈。输入处理与根节点确定。

2026-04-06 19:54:53 315

原创 枚举算法全面解析

把所有可能的情况一个一个列出来,然后检查每个情况是否满足条件。枚举是算法的基石—— 很多高级算法本质上都是"聪明的枚举"想清楚要枚举什么确保不重复、不遗漏能剪枝就剪枝,能缩小范围就缩小。

2026-04-02 20:04:23 819

原创 排序(插入,选择,冒泡,堆,快速,归并)

a[j+1] = w插入排序虽然简单,但它是理解排序算法的绝佳起点。掌握它之后,学习希尔排序、归并排序等更复杂的算法会更容易。从后往前比,大的往后挪,找到空位插进去!选择排序是另一种基础排序算法。每次从未排序的部分选出最小的元素,放到已排序部分的末尾。就像排队时,每次从剩下的人里挑最矮的站到队伍后面。从未排序选最小,交换放到前面来!外层循环i < n(最后一个不用处理)内层从i + 1开始(只遍历未排序部分)每轮只交换1次(先找最小值索引)不稳定排序(相等元素顺序可能变)CopyCopied。

2026-04-01 00:09:30 389

原创 树的存储vector

DFS:进函数才标记BFS:进队列必须立刻标记原因只有一个:防止重复入队 / 重复递归!DFS 递归进入函数才处理 → 函数内标记BFS 队列是先排队后处理 → 入队前必须标记目的都是:防止重复访问、死循环位置不一样,因为逻辑不一样!

2026-03-30 15:06:10 353

原创 链表--洛谷--队列安排

P1160 队列安排是洛谷经典的双向链表入门题,也是蓝桥杯、CSP-J 新手必练的模板题。本题核心考察双向链表的左右插入、节点删除、遍历输出,同时涉及删除标记数组的使用,非常适合巩固链表基础。本文将从题目分析、完整代码(超详细注释)、做题难点、核心知识点四个方面,彻底吃透这道题,帮新手避开所有坑。(其实写这道题的时候我遇到的难点是它需要判断重复的值和2~n)因为是同学被编号为 1∼N 所以不需要e[N]初始只有 1 号同学在队列中;2~N 号同学依次入列,每个同学需插入到已入列同学的左边或右边;

2026-03-20 23:15:33 379

原创 链表的习题总结

表格写法含义正确 / 错误ne[p]p是房间号,直接访问该房间的下一个✅ 正确ne[id]id是新房间号,访问新房间的下一个✅ 正确ne[x]x是数字,不是房间号,访问越界❌ 错误函数参数里的p已经是房间号了,所以可以直接ne[p]新元素x对应的房间号是id,所以必须用ne[id],不能用ne[x]你图里的ne[x]是手滑写错,正确应该是ne[id]然后在这道题的时候也是一开始用的是ne[x]所以才一直不对我也一直不太懂mp[N]到底是怎么用的 然后我问了aiplaintext。

2026-03-20 23:12:06 284

原创 13,STM32启动过程浅析

在系统复位(Reset)后,SYSCLK的第四个上升沿(四个周期),BOOT引脚的值将被锁存。MAP文件包括了各种.c文件、函数、符号等的地址、大小、引用关系等信息。主闪存存储器(仿真器(DAP)下载):FLASH 主要用这个和系统存储器(串口下载)分析各.c文件占用FLASH和RAM的大小,方便优化代码。2.1 STM32启动模式(F1/F4/F7/H7) (自举模式)2.2 STM32启动过程(内部FLASH为例)如果函数局部变量比较多,嵌套关系复杂,需要加大栈的大小!

2026-03-05 17:11:52 192

原创 存储器01

RAM = 运行内存,掉电没Flash = 存程序 / 文件,掉电还在Cache = 加速用,不是内存NOR Flash 跑代码,NAND Flash 存文件STM32 所有东西统一编址。

2026-02-26 23:53:49 495

原创 阶段复习一 Java基础(全)(琐碎知识点 期末复习笔记自用)

选项 A 的错误在于混淆了 JDK 和 JRE 的包含关系 ——JDK 内置 JRE,安装 JDK 后无需单独安装 JRE;其余选项均是对 JDK 的正确描述。场景推荐方法优点创建数组时确定所有元素声明时静态初始化(最简洁,一行完成所有 / 部分元素值相同批量赋值,无需循环按规则动态赋值 / 复用已有值灵活,支持自定义逻辑JDK9+、少量元素语法简洁,可读性高兼容所有版本 / 复杂赋值逻辑循环赋值通用,无版本限制你的原需求(给int[5]赋值),最优选择是 “声明时静态初始化”

2025-12-23 19:24:57 688

原创 阶段复习二 Java高级应用 (琐碎知识点)

方法形式适用场景简单读取网络资源,无需配置连接需要自定义连接参数(超时、请求头等)两者最终都能获得对应网络资源的输入流,核心考点是(最直接的答案)。Collection是一个抽象接口,定义了所有单列集合必须遵守的通用行为(增、删、查、遍历等),但不规定 “是否有序”“是否可重复” 等细节,这些细节由子接口(List/Set/Queue)实现。Set继承自Collection,是一个抽象子接口集合中不允许存储重复元素,且默认无索引(不能通过下标访问元素)。java运行// 按整数降序排序。

2025-12-18 22:16:46 294

原创 java复习知识点琐碎

答案依次为:方法重写(Override)、方法重载(Overload)子类改父类的方法 → 重写(Override);子类自己内部写多个同名不同参的方法 → 重载(Overload)。A 对 B 错答案:A(对)先判断循环条件,再执行循环体—— 只有条件为true时,才会进入循环体执行;若条件一开始为false,循环体可能一次都不执行。

2025-12-18 00:00:55 754

原创 类和对象java

1 类:被class关键词修饰的。 理解:表示现实生活中的【图纸】或【模板】 2 成员变量:在类中定义的变量。 理解:表示类的【属性】或【状态】3 成员方法:在类中定义的方法。 理解:表示类的【行为】或【动作】 get set4 构造方法:方法名和类同名,并且没有返回值和void关键字 理解:可以根据类创建出所需要的对象 类【图纸】—>构造方法【制造】—>对象【实体】5 对象:表示现实生活中

2025-10-28 19:57:27 229

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除