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

25.4.30数据结构|并查集 路径压缩

前言

QuickUnion快速合并的过程中,每次都要找根ID,而路径压缩让找根ID变得更加迅速直接。

路径压缩 针对的是findRootIndex()【查找根ID】进行的压缩。

需要实现的是:

在找根节点的过程中,记录这条路径上的所有信息,处理完事务后,恢复保存的节点信息,恢复父节点的关系

使用宏定义???

#ifndef#else#endif 是 C、C++ 等编程语言中的预处理指令,主要用于条件编译。

  • #ifndef:这是 "if not defined" 的缩写,其作用是检查某个宏是否未被定义。要是该宏未定义,就会执行 #ifndef 和 #else(若存在)或者 #endif 之间的代码;反之,则跳过这些代码。
  • #else:当 #ifndef 条件不满足时,也就是宏已经被定义,就会执行 #else 和 #endif 之间的代码。
  • #endif:用于标志条件编译块的结束,和 #ifndef 配对使用。

(没搞明白vs宏代换的配置)

 链式存储,链栈(只需要维护栈顶指针),链式队列(需要维护队头队尾)

对查找根ID函数进行操作:

对于每一个节点,

把他的索引放到栈里,

并记录了先后顺序

            

 未完待续。。。。。。

 

http://www.dtcms.com/a/167865.html

相关文章:

  • 企业经营系统分类及功能详解
  • Java状态机实战:打造高扩展性的订单流程引擎(含源码详解与快照设计)
  • Memory Bank 不够用?Cline 全新 CRCT:省 token,依赖关系自行追踪
  • OpenGL-ES 学习(13) ---- Shader 编译和程序对象
  • 生产级RAG系统一些经验总结
  • 构建强大垂直领域AI数据能力
  • C++11新特性_自动类型推导_decltype
  • 第3篇:请求参数处理与数据校验
  • Narendra自适应控制器设计
  • 掉馅饼,八分之一到二分之一:《分析模式》漫谈59
  • Linux架构篇、第1章_02源码编译安装Apache HTTP Server 最新稳定版本是 2.4.62
  • 笔试专题(十三)
  • 59常用控件_QComboBox的使用
  • 渗透测试中的那些“水洞”:分析与防御
  • 【2025五一数学建模竞赛A题】 支路车流量推测问题|建模过程+完整代码论文全解全析
  • 2025五一数学建模C题完整分析论文(共36页)(含模型、可运行代码、数据)
  • 段永平浙大访谈精华:长期主义的知行合一
  • socket-IO复用技术
  • 治理和管理的区别
  • 程序代码篇---ESP32云开发
  • 《算法精解:C语言描述》note-1 数据结构和算法简介
  • 存算一体架构下的新型AI加速范式:从Samsung HBM-PIM看近内存计算趋势
  • 统计模式识别理论与方法
  • 透视Linux内核:深度剖析Socket机制的本质
  • 使用MGeo模型高精度实现文本中地址识别
  • C++11新特性_自动类型推导
  • GPU虚拟化实现(七)
  • *(解引用运算符)与 ++(自增运算符)的优先级
  • 编写教育网站后端页面笔记
  • Dinero.js - 免费开源的 JavaScript 货币处理工具库,完美解决 JS 浮点数精度丢失问题