首页 > 其他分享 >蓝桥杯----图论训练

蓝桥杯----图论训练

时间:2023-06-01 23:45:02浏览次数:63  
标签:---- 图论 q2 sum dfs 蓝桥 swap 数组

STL

  当想要维护一个数组,其中的元素要求有序,同时可能随时对这个数组中的元素进行增减

  有没有一个STL可以快速维护一个这样的数组?

  multiset(平衡二叉树)

   默认从小到大排序

  

  注意离散化中清除重复元素的原理:

  unique()函数

       

    vector中的earse是删除指定一段,所以离散化有:

 

《树的直径》

  什么是树的直径?

    在一颗树上,两个叶子节点之间的最长距离下的路径

     证明方式<------

 如何dfs?

void dfs(int node,int fa)
{
    if (maxL<deep[node])
        d=node,maxL=deep[node];    
    for (int i=0;i<sides[node].size();i++)
    {
        int child=sides[node][i];
        if (child==fa) continue;
        deep[child]=deep[node]+1;
        road[child]=node;
        dfs(child,node);
    }
}

d为我们要求的端点,每一次只要深度有更深的点我们就更新

 

  

 如何用拓扑排序的方式将叶子节点一圈一圈地给“减掉”?

双队列的方式,其中有个十分神奇的用法:

  queue<int>q1,q2;

  swap(q1,q2);

  没想到swap可以直接交换队列

while (sum)
    {
        if (sum<=k)
            break;
        ans++;
        while (q1.size())
        {
            int node=q1.front();
            q1.pop();
            sum--;
            for (int i=0;i<sides[node].size();i++)
            {
                int next=sides[node][i];
                if (du[next]<=1)
                    continue;
                du[next]--;
                if (du[next]==1)
                    q2.push(next);
            }
        }
        swap(q1,q2);
    }

 

  

 

标签:----,图论,q2,sum,dfs,蓝桥,swap,数组
From: https://www.cnblogs.com/cilinmengye/p/17450527.html

相关文章

  • 《需求工程—软件建模与分析》2
    最近老师讲了项目的前景与范围,还有相关者分析,正好看书看得这一章。在一个项目开始之前,首先我们需要考虑一个问题就是为什么要启动这个项目,也就是说,这个项目的目标是什么?项目的目标是系统的业务需求。在很多情况下,相关者可以清晰地表达出系统的业务需求,这时可以通过安排......
  • 《需求工程—软件建模与分析》3
    需求工程——软件建模与分析》这本书的第二部分的主要讲解了需求获取中的各种活动以及活动中常用的方法与技术,例如背景資料的收集、前景与范围的限定、需求获取源头的确定、重要需求获取方法的应用等。包含了一些必要的分析活动以及分析的方法与技术,前期需求阶段的分析活动、方法......
  • 算法学习day41动态规划part03-343、96
    packageLeetCode.DPpart03;/***343.整数拆分*给定一个正整数n,将其拆分为k个正整数的和(k>=2),并使这些整数的乘积最大化。*返回你可以获得的最大乘积。*示例:*输入:n=2*输出:1*解释:2=1+1,1×1=1。**/publicclassIntegerBre......
  • 基于arx模型的MPC预测控制器simulink仿真
    1.算法仿真效果matlab2022a仿真结果如下: 2.算法涉及理论知识概要        arx模型是一种重要的时间序列分析模型,能够用来描述实际应用中的许多问题,在经济、电力系统、车辆驾驶、医疗、信号处理等领域都有着广泛的应用。因此,基于arx模型的相关理论和方法受到了大量关......
  • React 配置文件 | 配置本地IP地址和端口号
    问题create-react-app默认端口号是3000,当有的别的项目占用该端口号时自己想使用别的端口号时方法1、更改node_modulesa.依次打开“node_modules”—“react-scripts”—“scripts”文件夹,找到并打开start.js文件;b.在start.js文件中查找并修改“DEFAULT_PORT”项的端口值即......
  • SequoiaDB分布式数据库2023.5月刊
    本月看点速览行业认可,荣登中国最佳信创厂商系列榜单聚焦创新,入选2022年大湾区科创企业创新TOP10科技为本,协同发展,多家组织机构到访青杉计划2023已开启,一起攀登更高的“杉” 行业认可,荣登中国最佳信创厂商系列榜单近日,由第一新声联合天眼查发起的2023年中国最佳信创厂......
  • 3月5日周老师缓存面试题资料
    找班主任,要周老师的路线发一下面试突击班,第一天开班有6000+人在线~!!!希望大家紧张起来,今年竞争尤其激烈,新来的同学要加把劲~!今天主题:缓存面试题周老师提升面试成功率给到对方你有思想,有个人见解redis为什么快,TPS/QPS是多少,解决了项目什么问题?1,我讲的redis第一版,之后今年新讲的redi......
  • maven配置
      1.  2.PATH ......
  • m基于MPC模型预测的网络控制系统simulink仿真
    1.算法仿真效果matlab2022a仿真结果如下: 2.算法涉及理论知识概要       随着通信网络和信息理论的迅速发展,网络控制系统引起了研究人员和工程师的兴趣。众所周知,网络控制系统是一个非常具有挑战性和前景的研究领域。因此,网络控制系统(NCS)实现了传感器,控制器和执行器......
  • 5G时代,你准备好了吗?
    随着5G技术的不断发展和普及,我们已经进入了一个全新的数字时代。5G网络的高速、低延迟和大带宽,将为人们带来更加便捷、高效、智能的生活体验。在5G时代,我们将能够享受到更快的网速,更流畅的视频播放,更快的下载速度,甚至可以实现无缝切换。同时,5G技术还将推动物联网、智能家居、自动......