数列 前缀 区间 算法

算法笔记的笔记——第7章 栈、队列和链表

栈 后进先出 栈顶指针始终指向最上方元素 栈为空时栈顶指针为-1 常用操作 清空(clear):TOP = -1 获取栈内元素个数(size):size = TOP + 1 判空(empty):TOP == -1 进栈(push):st[++TOP] = x 出栈(pop):TOP-- 取栈顶(to ......
笔记 队列 算法

代码随想录算法训练营Day51 动态规划

#代码随想录算法训练营 代码随想录算法训练营Day51 动态规划| 309.最佳买卖股票时机含冷冻期 714.买卖股票的最佳时机含手续费 总结 309.最佳买卖股票时机含冷冻期 题目链接:309.最佳买卖股票时机含冷冻期 给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。 设计一个算 ......
随想录 训练营 随想 算法 代码

bzoj 2006 [NOI2010] 超级钢琴 线段树求区间极值+优先队列

挺神奇的一道题,唯一想不通的是为什么放在主席树的题单里.. 首先暴力找出所有的合法区间显然是不可能的。 考虑怎么贪心,假如固定每个L作为左端点,那么合法的区间就是[L+l-1,L+r-1](当然还要跟n取个min) 对于每个L,用线段树求出合法区间内最大的值,以及取得最大值时所对应的点,设为idx ......
极值 线段 队列 区间 钢琴

哈希算法与一致性哈希算法

哈希算法:取哈希后模节点的数目 假设有一个由A、B、C三个节点组成的KV服务,每个节点存放不同的KV数据。通过哈希算法,每个key都可以寻址到对应的服务器,比如,查询key是key-01,计算公式为hash(key-01)%3,经过计算寻址到了编号为1的服务器节点A 但如果服务器数量发生变化,基于新 ......
算法 一致性

【ACM算法竞赛日常训练】DAY2题解与分析【比赛】【数学考试】【简单瞎搞题】

DAY2共三题: 比赛(概率) 数学考试(前缀和与思维) 简单瞎搞题(dp) 视频讲解:https://www.bilibili.com/video/BV1hP411o7RD/ 🎈 作者:Eriktse 🎈 简介:19岁,211计算机在读,现役ACM银牌选手🏆力争以通俗易懂的方式讲解算法!❤️ ......
题解 算法 数学 DAY2 ACM

MLIR矩阵乘算法,新建Dialect,lowering

MLIR矩阵乘算法,新建Dialect,lowering MLIR:新建一个Dialect,lowering Multi-Level Intermediate Representation(MLIR)是创建可重用、可扩展编译器基础设施的新途径。 MLIR 项目的核心是 Dialect,MLIR 自身 ......
矩阵 算法 lowering Dialect MLIR

LeetCode 169. 多数元素(/hash sort 随机化 分治 Boyer-Moore 投票算法)

原题解 ###题目 约束 ###题解 ####方法一:哈希表 class Solution { public: int majorityElement(vector<int>& nums) { unordered_map<int, int> counts; int majority = 0, cnt ......
算法 Boyer-Moore LeetCode 元素 Boyer

基础算法(2)

高精度加法 (常规只能到10^6次方) 思想:1、大整数存储:每一位存入数组,个位存在前,高位存在后(和常规表示是反的); 2、模拟手算加法的步骤,进位 #include <iostream> #include <vector> using namespace std; const int n = ......
算法 基础

算法总结--线段树

声明(~~叠甲~~):鄙人水平有限,本文为作者的学习总结,仅供参考。 ##1.线段树介绍 线段树说是算法,更应该算是一种二叉树数据结构的使用。 其每个树的节点表示一个区间,其孩子节点表示该区间二分下来的两个节点,其值可以表示这个区间数据的某种运算,如最值、求和等,以下以数组 [1,2,3,4] 为栗 ......
线段 算法

SoC设计项目 —— AHB SRAM控制器的设计 & March C-算法内建自测试的实现

绪论 本项目用Verilog HDL语言设计了AHB总线上的SRAM控制器接口IP,SRAM存储器在AHB总线上作为AHB slave存在,该SRAM控制器具有以下特性: 支持单周期的SRAM读写操作 支持低功耗工作 SRAM存储体由两个Bank组成,系统根据地址选中一块/多块Bank,未被选中的B ......
控制器 算法 项目 March SRAM

R语言无套利区间模型:正向套利和反向套利次数、收益率分析华泰柏瑞300ETF可视化

全文链接:http://tecdat.cn/?p=31973 原文出处:拓端数据部落公众号 股指期货的套利交易有助于股指期货实现其价格发现以及风险规避的功能,因此提高套利交易的效率,对于发挥股指期货在经济发展中的作用有着重要的意义。 本文帮助客户对期货期现套利的研究。研究中主要以期货及其现货指数的数 ......
收益率 区间 收益 模型 次数

使用 Python 探索 感知机 算法

动动发财的小手,点个赞吧! 从理论到实践,我们将从简要的理论介绍开始研究感知机(器)学习方法,然后实现。 在这篇博文的最后,您将能够了解何时以及如何使用这种机器学习算法,清楚地了解它的所有优缺点。 1. 理论 1.1. 引言 感知器有其存在的生物学原因。我们的神经元不断从其他神经元接收能量,但只有在 ......
算法 Python

PAT Basic 1049. 数列的片段和

PAT Basic 1049. 数列的片段和 1. 题目描述: 给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段。例如,给定数列 { 0.1, 0.2, 0.3, 0.4 },我们有 (0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0. ......
数列 片段 Basic 1049 PAT

A* 算法及 Hybrid A* 算法

A* 算法 使用场景 A* 算法一般适用于一个质点在一个离散化的栅格地图上从一个起始点到另一个终点的最短寻路情况,其中每个栅格都只能是空域或者是障碍物,质点只能在每个确定的栅格中。由于 A* 算法的主体是一个质点,因此不适用于需要考虑动力学的机器人(例如汽车,拥有碰撞体积、连续的坐标以及朝向等) 未 ......
算法 Hybrid

乱七八糟的算法复习

笛卡尔树 一棵二叉树,结构上满足左子树的下标小于自己和右子树,右子树的下标大于自己和左子树。且键值满足堆的限制。 栈构建。维护当前根节点向右一直跳的右链,那么按数组下标顺序插入,每次插入,从栈顶一个个考虑,如果当前的节点的键值不配当他的父亲,那么就弹栈并继续,如果栈空或者找到一个可以当他的父亲的节点 ......
算法 乱七八糟

枚举算法

? 枚举算法就是:一堆数字里,从头开始循环,通过条件匹配正确的值 use for(let i=0; i<200; i++){ if(i%3 2 && i%4 1 && i%5 3){ console.log(i) } } notice 循环范围 筛选条件 打印结果 ......
算法

【ACM算法竞赛日常训练】DAY1题解与分析

DAY1 共四题: 月月查华华的手机:https://ac.nowcoder.com/acm/problem/23053 Rinne Loves Edges:https://ac.nowcoder.com/acm/problem/22598 逆序对:https://ac.nowcoder.com/a ......
题解 算法 DAY1 ACM DAY

算法 | 迷宫求解

问题描述 参考上图所示迷宫,编写算法求一条从入口到出口的有效路径。 途中阴影方块代表墙(不可行走),白色方块代表通道(支持行走)。 所求路径必须是简单路径,即所求得的路径上不能重复出现同一通道块。 算法分析 初步分析 通常采用穷举法,即从入口出发,顺某一方向向前探索,若能走通,则继续往前走;否则沿原 ......
迷宫 算法

如何自定义 elementui 的前缀

1、安装插件:postcss-change-css-prefix 2、在根目录下创建postcss.config.js文件,并写入如下内容: const addCssPrefix = require('postcss-change-css-prefix') module.exports = { pl ......
前缀 elementui

10 种聚类算法的完整 Python 操作示例

一.聚类 聚类分析,即聚类,是一项无监督的机器学习任务。它包括自动发现数据中的自然分组。与监督学习(类似预测建模)不同,聚类算法只解释输入数据,并在特征空间中找到自然组或群集。 群集通常是特征空间中的密度区域,其中来自域的示例(观测或数据行)比其他群集更接近群集。群集可以具有作为样本或点特征空间的中 ......
示例 算法 Python 10

华为OD机试 RSA 加密算法

📝 本期题目:RSA 加密算法 🎯 题目 RSA 加密算法在网络安全世界中无处不在, 它利用了极大整数因数分解的困难度,数据越大安全系数越高。 给定了一个 32 位正整数,请对其进行因数分解, 找出哪两个素数的乘积。 📥 输入 一个正整数 num,满足 0 < num <= 214748364 ......
算法 RSA

EKP nysh RSA 加密算法

一.RSACoder package com.landray.kmss.cmb.oasso.util; import java.net.URLDecoder; import java.security.Key; import java.security.KeyFactory; import java ......
算法 nysh EKP RSA

机器学习算法(二): 基于鸢尾花数据集的朴素贝叶斯(Naive Bayes)预测分类

优点: 朴素贝叶斯算法主要基于经典的贝叶斯公式进行推倒,具有很好的数学原理。而且在数据量很小的时候表现良好,数据量很大的时候也可以进行增量计算。由于朴素贝叶斯使用先验概率估计后验概率具有很好的模型的可解释性。 缺点: 朴素贝叶斯模型与其他分类方法相比具有最小的理论误差率。但是实际上并非总是如此,这... ......
鸢尾花 鸢尾 算法 机器 数据

机器学习算法(三):基于horse-colic数据的KNN近邻(k-nearest neighbors)预测分类

机器学习算法(三):基于horse-colic数据的KNN近邻(k-nearest neighbors)预测分类 项目链接参考:https://www.heywhale.com/home/column/64141d6b1c8c8b518ba97dcc 1 KNN的介绍和应用 1.1 KNN的介绍 k ......

数据算法_组合优化_匈牙利算法

###组合优化问题 (Combinatorial optimization problem,COP) 是一类在离散状态下求极值的最优化问题 二分图(Bipartite graph) 匹配是由一组没有公共端点的边构成的集合。 U与V之间的关联视为前一帧与当前帧的同一id目标的检测框的关联 数据关联是多 ......
算法 数据

学习数据mining算法收集(1)聚类算法:DBSCAN算法

——————————非原创,来自知乎https://zhuanlan.zhihu.com/p/77043965———————————————————————————— 1.定义 DBSCAN将簇定义为密度相连的点的最大集合,能够把具有足够高密度的区域划分为簇,并可在噪声的空间数据库中发现任意形状的聚 ......
算法 数据 mining DBSCAN

算法笔记的笔记——第6章 C++标准模板库(STL)

vector 变长数组 长度根据需要而自动改变的数组 可以用来以邻接表的方式储存图 使用 头文件:#include <vector> 命名空间:using namespace std; 定义 vector<typename> name; 相当于一维数组name[SIZE],但长度可变。typenam ......
笔记 算法 模板 标准 STL

雪花算法(SnowFlake)

简介 现在的服务基本是分布式、微服务形式的,而且大数据量也导致分库分表的产生,对于水平分表就需要保证表中 id 的全局唯一性。 对于 MySQL 而言,一个表中的主键 id 一般使用自增的方式,但是如果进行水平分表之后,多个表中会生成重复的 id 值。那么如何保证水平分表后的多张表中的 id 是全局 ......
算法 雪花 SnowFlake

「ACM 算法实践」[解题报告]麦田

分析 首先,前缀和的思路是很显然的。然后我们很容易想到暴力枚举矩形的左上角和右下角,然而 $\mathcal{O}(n^4)$ 的算法过不去,哪怕把最后一维用二分,倒数第二维加一点剪枝也还是会 T 两个点。 这时候应该考虑将多行/列压缩为一行/列,然后再使用双指针枚举列/行。详细来说就是将 $i$ ......
麦田 算法 报告 ACM

「ACM 算法实践」[解题报告]组队

分析 因为时间不多了,我一开始只考虑了 $a_i$ 互不相等的情况,没想到居然拿到了 60 昏( 正确解法是贪心 + 优先队列。~~而不是从「使得人数最少的队伍人数最多」中得到的二分~~ 首先肯定要将 a 数组排序,要使人数最少的队伍人数最多,我们优先将当前的数 $a[i]$ 放到以 $a[i]-1 ......
算法 报告 ACM