随笔分类 -  ACM / 数据结构

摘要:并查集 并查集,就是看谁和谁是一伙的,加入到同一棵树中。 代码要点: //找到一个结点根结点的函数 int fin(int x) { if(rt[x]==x)return x; return rt[x]=fin(rt[x]);//快速查找 } //把每一个序号的父结点改为自身 for(int i = 阅读全文
posted @ 2024-06-25 16:55 wlqtc 阅读(10) 评论(0) 推荐(0) 编辑
摘要:前缀和&二维前缀和 1. 前缀和 先写了一道前缀和的题目,以前的我这能骗人,其实不太沾边,所以先放一个模板代码在这。 前缀和的原理就是,a[i]的意义是从1~i的数的总和是多少,如果我想 #include<bits/stdc++.h> using namespace std; const int N 阅读全文
posted @ 2024-06-25 16:55 wlqtc 阅读(20) 评论(0) 推荐(0) 编辑
摘要:(Day7)算法复健运动for蓝桥杯-二分 二分比较简单,这里主要摘一些常用的写法: 1.找到目标数 int l,r,mid; while(l<=r) { if(a[mid]==x)return mid; else if(a[mid]<x)l=mid+1; else r=mid-1; } 2.找范围 阅读全文
posted @ 2024-06-25 16:54 wlqtc 阅读(8) 评论(0) 推荐(0) 编辑
摘要:(Day9)算法复健运动for蓝桥杯-双指针 先粘一个博客:素材来源https://www.cnblogs.com/luoyj/p/12408871.html 尺取法(又称为:双指针、two pointers)是算法竞赛中一个常用的优化技巧,用来解决序列的区间问题,操作简单、容易编程。 如果区间是单 阅读全文
posted @ 2024-06-25 16:53 wlqtc 阅读(16) 评论(0) 推荐(0) 编辑
摘要:(Day10)算法复健运动for蓝桥杯-差分&二维差分 差分简介 差分是前缀和的逆运算 b[i]=x[i]-x[i-1]; (差分的前缀和等于原序列) 可以用来更新区间 如果要l 到 r都加z 可以使用一个差分数组 a[l]+=z a[r+1]-=z 一维差分模板题: https://www.luo 阅读全文
posted @ 2024-06-25 16:44 wlqtc 阅读(16) 评论(0) 推荐(0) 编辑
摘要:(Day8)算法复健运动for蓝桥杯-最小生成树 一提到生成树就是经典prim和kruskal,一个从一个点开始,一个把边排序 虽然不用反复造轮子,但是还是需要从算法思想直接写出来,不能老背板子 练手的模板题: https://www.luogu.com.cn/problem/P3366 krusk 阅读全文
posted @ 2024-06-25 16:44 wlqtc 阅读(11) 评论(0) 推荐(0) 编辑
摘要:(Day12)算法复健运动for蓝桥杯-单调队列 模板题:https://www.luogu.com.cn/problem/P1886 这个不是严格的生成真正的滑动窗口,而是满足找最大值和最小值。 详见注释: #include<bits/stdc++.h> using namespace std; 阅读全文
posted @ 2024-06-25 16:43 wlqtc 阅读(5) 评论(0) 推荐(0) 编辑
摘要:(Day14) 算法复健运动for蓝桥杯-分治&归并排序 分而治之,个人理解就是类似递归,就是把大问题转化为子问题,然后一步步解决的 例子: 归并排序讲解: https://www.cnblogs.com/chengxiao/p/6194356.html 就是先用递归把数字分开,然后再按照顺序把两头 阅读全文
posted @ 2024-06-25 16:43 wlqtc 阅读(10) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示