zoukankan      html  css  js  c++  java
  • 数据结构与算法之并查集的精简要点总结

    并查集主要用于解决连接问题,其基本思想是为每一个数据都打上标签,当标签一致时则为一个集合。但是考虑到求并集的时候的效率问题,这里采用树形结构解决该问题,简单来说就是利用两个节点的根节点是否一致作为是否为一个集合的标志。

    实现

    1. 查找:为防止该数据结构退化为链表,在每次查找过程中,选择进行路径压缩,使该节点指向该节点的父节点的父节点。查找的结果则返回该节点所在子树的根节点。
    2. 合并:合并过程为了保证该数据结构的高效性,通过该所在子树的总层数决定哪个根节点(层数少的)为子节点,哪个根节点仍为根节点。
    3. 查询是否连接:判断两个节点的查找结果是否一致即可。

    性能

    理论上时间复杂度近乎为O(1)。

    任世事无常,勿忘初心
  • 相关阅读:
    uniapp 添加操作
    uniapp 页面跳转传值和接收
    网易移动端适配
    vue中使用better-scroll封装scroll组件
    时间格式化
    自定义rem适配
    在antd中封装ajax
    封装axios
    vue-cli使用proxy代理
    自定义工具函数
  • 原文地址:https://www.cnblogs.com/FlameBlog/p/14715363.html
Copyright © 2011-2022 走看看