自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 线段树 基础操作 区间查询 单点操作

2 build 这一步操作 实现了 构建tree[]这一个线段树数组。废话不多说 直接上代码 对递归不理解的小朋友 可能有点吃力哦。4modify 实现了从 x 位置 上 + v 的操作。1 pushUp 这一步 更新了 结构体数组 的和。综合操作分为4部分 均为模板代码 剖析下来就是堆。3 query 实现了从l - r的区间查询。

2025-04-09 16:32:27 343

原创 最短路之dijkstra算法 堆优化实战题目 蓝桥杯

基于 n m 同一数据量 范围 使用堆优化版本 小顶堆。java题解 (不会的可以在评论区提问 我进行讲解)

2025-03-31 22:58:00 809

原创 试除法 -- 分解质因数

这个缩短时间复杂度 因为N中最多有一个质因数大于sqrt(n) 所以最后单独判断即可。在不断的循环中已经将之前的合数都筛掉了很细节 可以好好带个数体验一下。给定一个数字 n 分解质因数。

2025-03-21 18:11:31 248

原创 试除法判断质数(素数)-- 算法比赛数学知识常用

可以发现 整除数据成对出现 可以用 i <= n / i来判断 可以防止溢出风险。暴力 从 2 -- n-1遍历 是否能 整除 如果可以 不是素数 否则反之。数学知识:如果一个数 只能被 1 和 本身整除 这个数就是素数。前提(这个数 > 1)的整数。

2025-03-21 11:16:30 204

原创 经典BFS之走迷宫

定义一个新的存储结构 PII 包含两个 first second 表示x 和 y。思路:g[][] 存储图的数据 d[][]当前的步数。最终输出d[n-1][m-1] 就是解。很典型的一层一层找 而不是走到底部的dfs 找到最短路的情况。hh队列头 tt为索引不断加入队列。用位移法实现一层一层搜索。BFS使用队列常见 手动队列实现达到优化。欢迎评论区讨论哟~~~~求 走出迷宫的路径长度。1 不可走 0 可走。

2025-02-23 16:19:54 565

原创 dfs应用实战篇

很浅显的DFS 邻接矩阵存储两个点是否联通,如果联通当前点计数器加1。蓝桥杯国赛C组 来源蓝桥官网 和 洛谷 --如有侵权请联系我删除。最后根据判断点数是否等于线路数确定是否为关键点 最终答案+1。源代码如下 希望大家一起讨论哦哦哦哦~~~java。sum表示总线路几条 ans表示答案。n点数 m通道数 uv表示两点邻接。如果走到最终回路,线路数字加1。cnt[i]表示该点计数了几次。bj[]表示当前点是否用过。a[][]表示临界矩阵。

2025-02-23 11:09:27 770

原创 哈希表之蹲坑法

通过相应的数据根据Mol规律先后插入h[k]中 如果有数据,象后遍历,找到空位置插入。//k的含义 如果在哈希表中 k表示数据的下标 如果不在哈希表中,k表示应该存储的位置。巨大数据 通过Mol数值得到相应有 规律的数据。对应编译器输出结果为200003。一般开数组到输入数据2~3倍。找质数方法如200000为例子。上代码(背诵熟练更好)

2025-02-16 21:55:17 267

原创 hash表-拉链法

一个数组,下方用链表存储映射数据。

2025-02-16 09:53:29 240

原创 并查集---树优化

通过树的形式,找到两个数组的父节点,其中一个父节点的父亲指向另一个数组的父节点;如果两个数据的父节点相同,在同一个数组里。通过树的形式,先使数组的父亲指向自己,递归的思想查询父节点。1 查询两个数据是否来自于一个数组。

2025-02-13 17:56:27 236

原创 Trie 树 算法

更新当前字母位置 p = son[p][u] 当字符串输入完了。实现原理:根节点 向下不断 探索是否出现 新的未知的 元素 如果出现 idx++;基本模板题目 不断插入字符串 根据给定输入 求给定单词出现多少次。

2025-02-12 11:17:50 220

原创 字符串处理之KMP算法

在字符串中,找到一个子串在模板串中的各种存在位置,如果要一遍一遍遍历,会非常浪费时间。因此诞生了KMP算法,核心观念是 省掉了一部分比较的部分,类似于递归。//实现next数组 存储最长公共子串。next数组 存储 最长前后公共子串。

2025-02-11 20:37:31 393

原创 单调队列-数据结构与算法

优化 : 考虑用队列存储 因为窗口华东过程中 窗口头元素会弹出 下一个元素会。因为下一个进入的元素一定会和此时里面所有的元素比较。进入,刚好队列符合条件。单调队列解决了这个问题,优化了时间。题目情景:给定一些数据 给定窗口大小 找到窗口中的大数和小数 输出。一般数据量很大百万*百万。q[] 数组 表示队列 存储的是元素的下标。用hh表示对头 tt表示队尾。a[] 数组 表示数据。常见问题--窗口问题。

2025-02-10 18:15:55 285

原创 单调栈--应用场景

读入数字 如果当前数字比前一个数字大,输出前一个数字,将当前数字存入栈数组。若前方数据均小于他 栈空 输出-1 将此数据重新加入栈中。如果比前一个小,不断是前面数据出栈,直到找到比他小的为止。读入一串数字 找到满足左侧靠他最近的比他小的数字。核心 满足再栈中的数据单调。

2025-02-09 17:10:06 167

原创 手动数组模拟栈-熟悉数据结构

else if(op.equals("empty")){//通过索引值来判断栈是否为空。//索引方便实现相关操作。//先扩充一个空间,存储加入的数据。//直接索引左移,将栈顶抛出。

2025-02-08 17:59:49 234

原创 单链表静态数组java

/将空格作为数组分割线,存储每一次的数据。//将读取的字符串流转化为整数型,后面同理。//算法题数据量大 用BufferedReader 读取数据。e 存储的value 值。en 存储的指针next。

2025-02-07 17:13:01 295

原创 双指针算法

典型代码 求一段序列中不重复的最大长度。实现O(n^2) ---> O(n)

2025-02-05 19:10:53 149

原创 我与树的秘密

种一棵树最好是十年前,其次呢是现在。

2025-02-05 18:33:39 81

原创 蓝桥杯中关于Java的高精度问题

remainder 可得到所得的余数。divide 可得到所得的商。高精度减法-subtract内置方法。内置multiply 方法。高精度加法-add内置方法。使用过程中用字符串读取。

2025-02-05 12:20:51 503

原创 二分典型-熟练掌握

细节:月利率已知范围,可以二分查找,否则十分复杂枚举。来源:洛谷P1163银行贷款。

2025-02-04 20:18:29 372

原创 二分算法+例题(涵盖两个二分边界问题)

题目来源:洛谷P1102A-B数对。

2025-02-04 19:49:18 763

原创 逆序对的数量 数据量大-归并排序思想

int k = 0;int i = l;else {m < k;return res;i < n;sc.close();

2025-02-04 00:51:34 185

原创 归并排序JAVA代码

/定义头指针,分别指向两条链的头。//取一个中间的点分开,分成两段。//定义一个新的数组存储有顺序的数据。

2025-02-03 23:46:53 308 1

原创 快速排序2 详细解读版本

来源ACWING 786 第K个树题目如下:给定一个长度为 nn 的整数数列,以及一个整数 kk,请用快速选择算法求出数列从小到大排序后的第 kk 个数。

2025-02-02 20:50:13 564 1

原创 快速排序 - ACWING 753

来源ACWING 753 快速排序题目如下:给定你一个长度为 nn 的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。

2025-02-02 20:27:18 328 1

空空如也

空空如也

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

TA关注的人

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