数列 前缀 区间 算法

算法导论-第21章-用于不相交集合的数据结构

21.1节描述不相交集合数据结构支持的各种操作,并给出一个简单的应用。21.2节使用一种简单链表结构来实现不相交集合。21.3节使用有根树来实现,使用树表示的运行时间理论上好于线性时间,然而对于所有的实际应用它确是线性的。 # 21.1 不相交集合的操作 一个**不相交集合数据结构**(disjoi ......
数据结构 导论 算法 结构 数据

算法导论-第4章-分治法

# 回忆 在2.3.1中,归并排序使用了分治法。在分治法中,当递归地求解一个问题,在每层递归中执行如下三步骤: - 分解(Divide):将问题划分为子问题,子问题的形式与原问题一样,只是规模更小。 - 解决(Conquer):递归地求解出子问题。如果子问题的规模足够小,则停止递归,直接求解。 - ......
导论 算法

算法导论-第6章-堆排序

# 6.1 堆及堆的性质 **(二叉)堆**可以看作完全二叉树,其存储结构通常是**数组**,表示堆的数组A中有两个重要属性:$A.length$表示数组元素的个数;$A.heap-size$表示有多少个堆元素在数组中,$0 \le A.heap-size \le A.length$。 ![Figu ......
导论 算法

算法导论-第7章-快速排序

# 7.1 快速排序的描述 对一个典型的子数组$A[p..r]$进行快速排序的三步分治过程: - **分解**:数组$A[p..r]$被划分为两个(可能为空)的子数组$A[p..q-1]$和$A[q+1..r]$,使得$A[p..q-1]$中的每一个元素都小于等于$A[q]$,而$A[q+1..r] ......
导论 算法

算法导论-第8章-线性时间排序

# 前言 此前我们已经学习了几种$\Omicron(n \log n)$的排序算法,这些排序算法都有一个有趣性质,在排序的最终结果中,各元素的次序依赖于它们之间的比较,我们将这类排序称为**比较排序(comparison sort)**。 8.1节将要证明**对包含$n$个元素的输入序列,在最坏情况 ......
导论 线性 算法 时间

算法导论-第9章-中位数和顺序统计量

一个包含 $n$ 个元素的集合中的第 $i$ 个**顺序统计量**指集合中的第 $i$ 小的元素。**最小值**是第 $1$ 个顺序统计量($i= 1$),**最大值**是第 $n$ 个顺序统计量($i = n$)。 9.1节将讨论从集合中找出最小值和最大值的问题。9.2节将分析一个实用的算法,它在 ......
中位数 导论 算法 顺序

文心一言 VS 讯飞星火 VS chatgpt (51)-- 算法导论6.2 3题

# 三、当元素 A[i] 比其孩子的值都大时,调用 MAX-HEAPIFY(A.i)会有什么结果? ## 文心一言: 当元素 A[i] 比其孩子的的值都大时,调用 MAX-HEAPIFY(A, i) 会将 A[i] 与其孩子中的最小值进行交换,并将 A[i] 视为新的根节点。这个操作会使得以 A[i ......
文心 导论 算法 chatgpt VS

学不会的排序算法

#什么是排序 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法,就是如何使得记录按照要求排列的方法。 #排序算法的评价标准 (1)时间复杂度(2)空间复杂度(3)排序方式(4)稳定性 ![](https://img2023.cnblogs.com/bl ......
算法

Hutool—雪花算法

一、介绍Hutool工具: 官网地址:简介 | Hutool Hutool是一个Java工具库,其中包含了各种实用的工具类和方法。通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。Hutool中的工具方法来自每个用户的精雕细琢 ......
算法 雪花 Hutool

代码随想录算法训练营第二十天| 669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树

669. 修剪二叉搜索树 思路 递归法: 需要思考清楚,如果当前节点<low,那么就返回递归它的右节点,而不是自己取判断,找出来一个合适的节点,这样的话会越想越乱 代码: 1 TreeNode* trimBST_cursor(TreeNode* root, int low, int high) { ......
随想录 训练营 数组 随想 算法

算法中的七大查找方法

算法中有多种查找方法,常见的有: 顺序查找:从一端开始,顺序扫描,依次将扫描到的结点关键字与给定值k相比较,若相等则表示查找成功;若扫描结束仍没有找到关键字等于k的结点,表示查找失败。 二分查找:在有序的数组中,确定中间的下标mid=(left+right)/2,然后让需要查找的数findVal和a ......
算法 七大 方法

前缀长度转成子网掩码

原文地址:https://www.cnblogs.com/liqinglucky/p/ipv6_mask.html 将前缀长度转成子网掩码 #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <arpa ......
前缀 长度

Adam优化算法在大规模分布式模型训练中的应用:模型整合与性能提升

作者:禅与计算机程序设计艺术 标题:45. Adam优化算法在大规模分布式模型训练中的应用:模型整合与性能提升 1. 引言 1.1. 背景介绍 随着深度学习模型的规模越来越大,训练过程需要大量的计算资源和时间。为了让模型能够高效地训练,一些优化算法被提出,以减少训练时间和提高模型性能。其中,Adam ......
模型 分布式 算法 大规模 性能

基于深度学习的物体检测算法研究

作者:禅与计算机程序设计艺术 《88.《基于深度学习的物体检测算法研究》 1. 引言 1.1. 背景介绍 随着计算机视觉和人工智能的发展,物体检测技术在各个领域得到了广泛应用,如自动驾驶、智能安防、医疗影像分析等。物体检测是计算机视觉中的一个重要任务,其目的是在图像或视频中检测出物体的位置和范围,为 ......
物体 算法 深度

m基于万能逼近原理自适应模糊控制算法的多自由度AUV运动控制抗干扰补偿simulink仿真

1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 自主水下航行器(Autonomous Underwater Vehicle,AUV)是一种具有自主性、灵活性、隐蔽性等优点的智能化设备,广泛应用于水下勘探、监测、搜救等任务。在AUV的运动控制中,需要考虑到水下环境的复 ......
自由度 抗干扰 算法 simulink 原理

m基于内外环PD控制算法的四旋翼无人机飞行控制simulink仿真

1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 随着无人飞行器技术的不断发展,其在各个领域有着越来越多的应用,如商业领域通过无人机进行物件派送,在农业领域通过无人机进行农作物的监控,在军事领域通过无人机进行敌情监控等。无人机相对于载人飞机而言,最大的区别是其无人驾驶 ......
旋翼 无人机 算法 simulink

决战圣地玛丽乔亚重新归来之Day57--算法回溯

上次的题目给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。 使用回溯的方法去解。 回溯通用模板: void backtracking(参数) { if (终止条件) { 存放结果; return; } for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) ......
算法 Day 57

LFU 缓存淘汰算法

> Least Frequently Used(LFU): 淘汰使用次数最少的数据。 ## LFU 算法的需求 1. 接收一个参数 `capacity` 作为缓存的最大容量 2. 实现一个函数 `put()` 添加数据到缓存 3. 实现一个函数 `get()` 查询缓存中的数据 4. 以上函数应该在 ......
缓存 算法 LFU

算法学习day01数组part01-704、27

package SecondBrush.Array; /** * 704. 二分查找 */ public class BinarySearch_704 { public int search(int[] nums, int target) { int left = 0; int right = nu ......
数组 算法 01 part day

技术岗/算法岗面试如何准备?5000字长文、6个角度以2023秋招经历分享面试经验

![ ](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/3691fcc2ec2f4ea782938c4357246470~tplv-k3u1fbpfcp-zoom-1.image) 1. **技术岗/算法岗面试流程是什么样的**? 1. **技术 ......
长文 算法 角度 经验 技术

文心一言 VS 讯飞星火 VS chatgpt (50)-- 算法导论6.2 2题

# 二、参考过程 MAX-HEAPIFY,写出能够维护相应最小堆的 MIN-HEAPIFY(A,i)的伪代码,并比较 MIN-HEAPIFY 与 MAX-HEAPIFY 的运行时间。 ## 文心一言: MIN-HEAPIFY(A, i)的伪代码如下: 1.将节点i及其子树中的最小元素交换到根节点i; ......
文心 导论 算法 chatgpt VS

m基于NB-IoT网络的SWAP资源分配优化算法matlab仿真

1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 NB-IoT是一种新兴的低功耗广域物联网(LPWAN)通信技术,它可以实现低功耗、低成本、大容量和广覆盖的特点,适用于物联网应用场景。在NB-IoT网络中,由于物联网设备的数量较大、通信频率较低、数据量较小等特点,资源 ......
资源分配 算法 NB-IoT matlab 资源

强化学习从基础到进阶-常见问题和面试必知必答[8]:近端策略优化(proximal policy optimization,PPO)算法

强化学习从基础到进阶-常见问题和面试必知必答[8]:近端策略优化(proximal policy optimization,PPO)算法 ......

LRU 缓存淘汰算法

> Least Recently Used(LRU) 是缓存淘汰一种常用的策略,内存满了则优先删除最久没被使用的数据。 ## LRU 算法的需求 1. 接收一个参数 `capacity` 作为缓存的最大容量 2. 实现一个函数 `put()` 添加数据到缓存 3. 实现一个函数 `get()` 查询 ......
缓存 算法 LRU

欧几里得算法求解最大公因数(gcd)正确性的证明

# 欧几里得算法求解最大公因数(gcd)正确性的证明 欧几里得算法是求解最大公因数(gcd)的简单且高效的算法。它的求解方法是以下的一个递归式: $$ \gcd(a, b) = \begin{cases} a & b = 0 \\ \gcd(b, a\bmod b) & b \neq 0 \end{ ......
公因数 正确性 算法 gcd

[CQOI2009]中位数图(前缀和)

点击查看代码 ``` #include using namespace std; const int N = 1e5+10; int a[N]; map mp; int main(){ ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); int n,b,p ......
中位数 前缀 CQOI 2009

Shuffle Cards (牛客多校) (rope 块状链表 用作可持续优化平衡树, 用于区间的整体移动操作(可以类比于字符串))

rope: #include<ext/rope> using namespace __gnu_cxx; 定义方法:rope<变量类型>变量名称; 人话解释:超级string 算法解释:块状链表(即讲链表与数组的优势结合,形成分块思想) 用途解释:这本来是一个用于快速操作string的工具,却一般被定 ......
块状 区间 字符串 字符 整体

代码随想录算法训练营第十九天| 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点

235. 二叉搜索树的最近公共祖先 思路: 因为是二叉搜索树,所以公共祖先一定是位于这两个节点区间中的 问题: 为什么第一个是这两个中间的例子,就是公共祖先呢?因为是最先符合要求的, 代码: 1 TreeNode* lowestCommonAncestor(TreeNode* root, TreeN ......
随想录 训练营 节点 九天 祖先

【算法】根据输入的数字,重新排列生成一个更大的数字

需求:创建一个函数,该函数取一个正整数,并返回下一个较大的数字,该数字可以通过重新排列其数字来形成。例如: 12 >21 513==>531 2017年 >2071 如果数字不能重新排列以形成更大的数字,则返回-1: 9 >-1 111=>-1 531=>-1 ......
数字 算法

YBTOJ 1.2贪心算法

#### A.奶牛晒衣服 ![image](https://img2023.cnblogs.com/blog/3067044/202306/3067044-20230628083739083-1323918277.png) ![image](https://img2023.cnblogs.com/b ......
算法 YBTOJ 1.2