【古谷彻】算法模板(更新ing···)

目录

一、数学

1、逆元

(一)费马小定理/欧拉定理(快速幂)

2、组合数

(1)求组合数C(n,m)

方法一:阶乘+逆元+快速幂求组合数

方法二:记忆化搜索

方法三:递推公式

(2)组合数求概率 

3、高精度sqrt

 (1)二分法

(2)递加递减

4、快速幂

5、欧拉函数

 方法一:埃氏筛

方法二:欧拉筛

6、 线性筛

7、质数判断

8、欧拉常数

9、线性基 

形式一:数组

1、处理线性基

2、最大异或和

3、最小异或和

形式二:容器 

二、数据结构 

1、并查集

(1)普通并查集

优化一:路径压缩(会破坏树结构!!!

优化二:启发式合并(不压缩路径,保持树结构!!!

形式1:按高合并

形式2:按集合大小合并

优化三: 压缩路径+启发式合并

(2)带权并查集

(3)种类并查集——维护循环对称关系 

两种关系:

三种关系: 

(3)可撤销并查集(看不懂。。。 

2、启发式合并

3、字符串哈希

形式一:单哈希

4、线段树 

(1)单点修改,区间查询

(2)区间修改,区间查询

5、线段树进阶

(1)线段树区间染色 

6、树状数组 

(1)单点修改,区间查询

(2)区间修改,单点查询 

(3)求逆序对数量

7、分块 

三、图论

1、图的存储

(1)邻接矩阵

(2)邻接表

(3)链式前向星

2、二分图最大匹配

 (1)匈牙利算法

方法一:邻接矩阵

方法二:链式前向星(注意数组及边的标号问题!!!) 

(2)KM算法 

3、最小点覆盖

4、最短路

(1)Dijkstra算法

方法一:链式前向星+优先队列

(2)Floyd算法 

(3)Bellmon-Ford算法 

(4)SPFA算法 

5、拓扑排序 

四、字符串

五、STL

1、优先队列—priority_queue

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/148958.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

力扣第102题 广度优先搜索 二叉数 c++

题目 102. 二叉树的层序遍历 中等 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:[[3],[9,20…

CSDN博主粉丝数突破10万:坚持分享的力量与收获

今天,我在CSDN上看到了一位好友的统计数据,他统计了CSDN上所有粉丝数量排名靠前的博主的排名。虽然这个统计可能存在一些误差,但大体上应该是准确的。我惊讶地发现,截止到2023年10月4日,我的粉丝数量已经达到了101,376…

uniapp项目实践总结(二十五)苹果 ios 平台 APP 打包教程

导语:当你的应用程序开发完成后,在上架 ios 应用商店之前,需要进行打包操作,下面就简单介绍一下打包方法。 目录 准备工作注册账号生成证书打包配置准备工作 在打包之前,请保证你的 uniapp 应用程序编译到 ios 模拟器或者是真机调试基座环境下是可以正常运行的,苹果打包…

二叉树题目:路径总和 II

文章目录 题目标题和出处难度题目描述要求示例数据范围 前言解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题:路径总和 II 出处:113. 路径总和 II 难度 4 级 题目描述 要求 给你二叉树的根结点 root \tex…

基于三平面映射的地形纹理化【Triplanar Mapping】

你可能遇到过这样的地形:悬崖陡峭的一侧的纹理拉伸得如此之大,以至于看起来不切实际。 也许你有一个程序化生成的世界,你无法对其进行 UV 展开和纹理处理。 推荐:用 NSDT编辑器 快速搭建可编程3D场景 三平面映射(Trip…

侯捷 C++ STL标准库和泛型编程 —— 9 STL周围

最后一篇,完结辽!😋 9 STL周围 9.1 万用Hash Function Hash Function的常规写法:其中 hash_val 就是万用Hash Function class CustumerHash { public:size_t operator()(const Customer& c) const{ return hash_val(c.fna…

DevEco Studio设置Nodejs提示路径只能包含英文、数字、下划线等

安装DevEco Studio 3.1.1 Release 设置Nodejs路径使用nodejs默认安装路径 (C:\Program Files\nodejs) 提示只能包含英文、数字、下划线等 , 不想在安装nodejs请往下看 nodejs默认路径报错 修改配置文件 1、退出DevEco Studio 2、打开配置文件 cmd控制台…

Visopsys 0.92 发布

Visopsys 是一个 PC 机的操作系统,系统小型、快速而且开源。有着丰富的图形界面、抢先式多任务机制以及支持虚拟内存。Visopsys 视图兼容很多操作系统,但并不是他们的克隆版本。Visopsys 0.92 现已发布,此维护版本引入了多任务处理程序、文件…

卸载无用Mac电脑软件应用程序方法教程

如何在Mac电脑卸载应用程序?Mac OS系统的用户卸载软件时,大部分会选择直接将软件图标拖进废纸篓清倒。这种操作会留下大量程序残余文件占据磁盘空间,手动清理又怕误删文件,有时还会遇到无法移除的恶意/流氓软件。小编今天分享3种可…

zookeeper选举机制

全新集群选举 zookeeper 全新集群选举机制网上资料很多说法很模糊,仔细思考了一下,应该是这样 得到票数最多的机器>机器总数半数 具体启动过程中的哪个节点成为 leader 与 zoo.cfg 中配置的节点数有关,下面以3个举例 选举过程如下 server…

540. 有序数组中的单一元素

链接: 540. 有序数组中的单一元素 代码: 方法一:全数组的二分查找 思路和算法 假设只出现一次的元素位于下标 xxx,由于其余每个元素都出现两次,因此下标 xxx 的左边和右边都有偶数个元素,数组的长度是奇…

【2023年11月第四版教材】第18章《项目绩效域》(第一部分)

第18章《项目绩效域》(第一部分) 1 章节内容2 干系人绩效域2.1 绩效要点2.2 执行效果检查2.3 与其他绩效域的相互作用 3 团队绩效域3.1 绩效要点3.2 与其他绩效域的相互作用3.3 执行效果检查3.4 开发方法和生命周期绩效域 4 绩效要点4.1 与其他绩效域的相…

新版校园跑腿独立版小程序源码 多校版本,多模块,适合跑腿,外卖,表白,二手,快递等校园服务

最新校园跑腿小程序源码 多校版本,多模块,适合跑腿,外卖,表白,二手,快递等校园服务 此版本为独立版本,不需要** 直接放入就可以 需要自己准备好后台的服务器,已认证的小程序&#xf…

MyBatisPlus(九)模糊查询

说明 模糊查询&#xff0c;对应SQL语句中的 like 语句&#xff0c;模糊匹配“要查询的内容”。 like /*** 查询用户列表&#xff0c; 查询条件&#xff1a;姓名包含 "J"*/Testvoid like() {String name "J";LambdaQueryWrapper<User> wrapper ne…

讲讲项目里的仪表盘编辑器(二)

应用场景 正常来说&#xff0c;编辑器应用场景应该包括&#xff1a; 编辑器-预览 编辑器 最终运行时 怎么去设计 上一篇推文&#xff0c;我们已经大概了解了编辑器场景。接下来&#xff0c;我们来看预览时的设计 编辑器-预览 点击预览按钮&#xff0c;执行以…

Spring Cloud Loadbalancer 实现客户端负载均衡

针对 ribbon 负载均衡组件&#xff0c; 官方提出的替换解决方案是 Spring Cloud Loadbalancer。本次主要通过学习示例介绍了 Spring Cloud Loadbalancer 的基础使用。 1&#xff0c;引入pom <dependency><groupId>org.springframework.cloud</groupId><…

React18入门(第一篇)——JSX、TSX语法详解

文章目录 一、JSX 语法简介二、和 HTML 标签的几点不同三、JSX 属性四、JSX 事件4.1 简单点击事件4.2 类型限制4.3 带参数&#xff0c;箭头函数 五、插入 JS 变量六、JSX 中使用条件判断七、循环 一、JSX 语法简介 JSX - 是 JS 的扩展&#xff0c;写在 JS 代码里面&#xff0c…

ROS(0)命令及学习资源汇总

ROS安装命令 参考&#xff1a;Ubuntu20.04.4安装ROS Noetic详细教程 - 知乎 安装C和Python3 sudo apt-get install g sudo apt-get install python3 ROS运行小海龟仿真器 roscore确定ROS是否运行成功rosrun turtlesim turtlesim_node运行小海龟仿真器rosrun turtlesim turtle_…

【微信小程序开发】一文学会使用CSS控制样式布局与美化

引言 在微信小程序开发中&#xff0c;CSS样式布局和美化是非常重要的一部分&#xff0c;它能够为小程序增添美感&#xff0c;提升用户体验。本文将介绍如何学习使用CSS进行样式布局和美化&#xff0c;同时给出代码示例&#xff0c;帮助开发者更好地掌握这一技巧。 一、CSS样式布…

星宿UI2.4资源付费变现小程序源码 支持流量主

第一个小程序为星宿小程序 目前是最新版2.0 搭建星宿需要&#xff1a;备用域名 服务器 微信小程序账号 功能&#xff1a;文章展示 文章分类 资源链接下载 轮播图 直接下载附件功能 很多 很适合做资源类分享 源码下载&#xff1a;https://download.csdn.net/download/m0_6604…