当前位置: 首页 > news >正文

网站制作公司网站建设网站制作南宁

网站制作公司网站建设,网站制作南宁,成都网站建设名录,公司网站域名价格目录 1 基础知识2 模板3 工程化 1 基础知识 并查集支持O(1)时间复杂度实现#xff1a; 将两个集合合并。询问两个元素是否在一个集合中。 基本原理#xff1a;每个集合用一颗树来表示。树根的编号就是整个集合的编号。每个结点存储它的父结点#xff0c;p[x]表示x的父结点… 目录 1 基础知识2 模板3 工程化 1 基础知识 并查集支持O(1)时间复杂度实现 将两个集合合并。询问两个元素是否在一个集合中。 基本原理每个集合用一颗树来表示。树根的编号就是整个集合的编号。每个结点存储它的父结点p[x]表示x的父结点。 问题1如何判断树根p[x] x。 问题2如何求x的集合编号while (p[x] ! x) x p[x];。上述为朴素做法可以通过路径压缩进行优化。 int find(int x) {if (p[x] ! x) p[x] find(p[x]);return p[x]; }问题3如何合并两个集合px是x的集合编号py是y的集合编号p[px] py。 2 模板 (1)朴素并查集int p[N]; //存储每个点的祖宗节点// 返回x的祖宗节点int find(int x){if (p[x] ! x) p[x] find(p[x]);return p[x];}// 初始化假定节点编号是1~nfor (int i 1; i n; i ) p[i] i;// 合并a和b所在的两个集合p[find(a)] find(b);(2)维护size的并查集int p[N], size[N];//p[]存储每个点的祖宗节点, size[]只有祖宗节点的有意义表示祖宗节点所在集合中的点的数量// 返回x的祖宗节点int find(int x){if (p[x] ! x) p[x] find(p[x]);return p[x];}// 初始化假定节点编号是1~nfor (int i 1; i n; i ){p[i] i;size[i] 1;}// 合并a和b所在的两个集合size[find(b)] size[find(a)];p[find(a)] find(b);(3)维护到祖宗节点距离的并查集int p[N], d[N];//p[]存储每个点的祖宗节点, d[x]存储x到p[x]的距离// 返回x的祖宗节点int find(int x){if (p[x] ! x){int u find(p[x]);d[x] d[p[x]];p[x] u;}return p[x];}// 初始化假定节点编号是1~nfor (int i 1; i n; i ){p[i] i;d[i] 0;}// 合并a和b所在的两个集合p[find(a)] find(b);d[find(a)] distance; // 根据具体问题初始化find(a)的偏移量3 工程化 class UnionFind { public:UnionFind(int n) {this-n n;p.resize(n);cnt.resize(n);d.resize(n);for (int i 0; i n; i) {p[i] i;cnt[i] 1;d[i] 0;}}int find(int x) {if (x ! p[x]) {int u find(p[x]);d[x] d[p[x]];p[x] u;}return p[x];}void merge(int x, int y) {int px find(x), py find(y);if (px ! py) {p[px] py;cnt[py] cnt[px]; }return;}int size(int x) {//返回x所在集合的大小return cnt[find(x)];} private:int n;vectorint p; //存储父结点vectorint cnt; //存储集合大小根结点的cnt才有意义vectorint d; //存储到根结点的距离 };
http://www.dnsts.com.cn/news/280018.html

相关文章:

  • 网站不备案会怎...义乌产品设计公司
  • 展示页网站怎么做排名wordpress图片编辑器
  • 昆明做网站费用重庆工程建设招标网官方网站
  • 手机网站进不去怎么解决百度南京代理商
  • 怎么自己学做网站排名好的郑州网站建设
  • 网站制作运营wordpress 底部音乐播放器插件
  • 公司做网站哪个好滕州网站建设 助企网络
  • 宜宾微信网站建设个人社保缴费比例是多少
  • 关于工程项目建设的网站怎么建设个人主页网站
  • 电子商务网站建设与完整实例东莞网站制作十年乐云seo
  • 鹤山市城乡住房建设部网站企业信息填报系统
  • 官方网站下载zoom编程培训班学费是多少
  • 洛阳高新区做网站公司烟台专门做网站的
  • 网站建设图文教程中囯联通腾迅
  • 高碑店住房和城乡建设局网站短网址 wordpress
  • 免费推广原因熊掌号接合网站做seo
  • 全屏网站模版前几年做那个网站能致富
  • 网站开发详细设计网盘爬虫源码是做网站来用的
  • 怎样申请注册公司网站最简洁的wordpress主题
  • 汝南县网站建设网站设计待遇
  • 淘宝cms建站聚名网域名注册官网
  • wordpress+登陆图标wordpress访问优化插件
  • 广州市官网网站建设吕梁推广型网站建设
  • 大悟网站设计西宁网站建设报价cu君博规范
  • 政务公开 网站建设郑州找人公司
  • 主题网站设计模板浙江温州乐清新闻
  • 查询网站whois大连零基础网站建设培训哪里有
  • 网站建设柒金手指下拉二一深圳营销型网站建设服务哪家好
  • 网站备案免费的吗镇江网站推广优化
  • 安阳县吕村七中录取分数线手机网站优化 工具