算法43

算法总结--线段树

声明(~~叠甲~~):鄙人水平有限,本文为作者的学习总结,仅供参考。 ##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

使用 Python 探索 感知机 算法

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

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

算法 | 迷宫求解

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

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

「ACM 算法实践」[解题报告]时间管理大师

分析 一开始想着应该要分情况讨论,如果每台电脑的耗电量都小于 $e$ ,那么可以知道小 Q 是可以一直学习下去的,如果存在电脑的耗电量大于等于 $e$ ,贪心的想法是将每台电脑能用的时间从小到大排序,然后丢进优先队列里,再考虑给谁充电,这样一来情况就非常复杂了。 正确的做法是二分答案 $t$ ,计算 ......
时间管理 算法 大师 时间 报告

高精度算法-高精度加法

为什么要用高精度 因为有的题目的数据很大,超出long long的范围,所以我们需要用高精度来计算: 首先是高精度加法: 高精度加法就是仿照我们竖式加法进行操作,逐位相加,注意进位!!! 题目传送门 Tiling Time Limit: 1000MS Memory Limit: 65536K Tot ......
高精 高精度 加法 算法

蚁群算法及 TSP 问题上的应用

群智能(Swarm intelligence) 自然界动物群,称之为群。 群的特征: 相互作用的相邻个体的集合 个体的行为简单,既有竞争又有协作 智能化的集体行为(1+1>2): 个体间不仅能够交互信息,还能够处理信息,根据信息改变自身行为 没有一个集中控制中心,分布式、自组织 作为群体协同工作时, ......
算法 问题 TSP

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

#代码随想录算法训练营 代码随想录算法训练营Day50 动态规划| 123.买卖股票的最佳时机III 188.买卖股票的最佳时机IV 123.买卖股票的最佳时机III 题目链接:123.买卖股票的最佳时机III 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算 ......
随想录 训练营 随想 算法 代码

前缀和算法

前缀和算法 什么是前缀和? 前缀和是指某序列的前n项和,可以把它理解为数学上的数列的前n项和,而拆分可以看成前缀和的逆运算。合理的使用前缀和与拆分,可以将某些复杂的问题简单化。 具体做法: 首先做一个预处理,定义一个sum[]数组,sum[i]代表a数组中前i个数的和。 求前缀和运算: for(in ......
前缀 算法

基于遗传算法优化的BP神经网络图像分割matlab仿真

1.算法描述 遗传算法(Genetic Algorithm-GA)是一种基于自然选择和基因遗传学原理的优化搜索方法。它将“优胜劣汰,适者生存”的生物进化原理引入待优化参数形成的编码串群体中,按照一定的适配值函数及一系列遗传操作对各个体进行筛选,从而使适配值高的个体被保留下来,组成新的群体,新群体中各 ......
神经网络 算法 图像 神经 matlab

通过MATLAB实现基于PSO优化的NARMAX模型参数辨识算法

1.算法描述 粒子群优化算法(PSO),粒子群中的每一个粒子都代表一个问题的可能解, 通过粒子个体的简单行为,群体内的信息交互实现问题求解的智能性。 最终算法伪代码如下: 初始化: 每个粒子获得一个随机解和一个随机的SS (命名为速度) For 在位置 X_{id} 的所有粒子, 计算新的位置 X_ ......
算法 模型 参数 MATLAB NARMAX

推理引擎-Kernel优化-Im2Col算法

1、介绍一下通用的卷积过程 ......
算法 引擎 Kernel Im2Col 2Col

vue核心原理(Diff算法、虚拟dom)

核心原理&源码 Diff 算法 这里参考大佬文章:https://mp.weixin.qq.com/s/oAlVmZ4Hbt2VhOwFEkNEhw diff 算法的进化 关于 diff 算法的最经典的就是 Matt Esch 的 virtual-dom,以及 snabbdom(被整合进 vue 2 ......
算法 原理 核心 Diff vue

数据结构算法学习前言

数据结构算法学习 写在前面: 今天是2023-03-21,上一次接触算法是在公司导师的带领下,学习了数据结构算法,他一题一题讲给我的,但是当时却不太争气,并没有掌握太多,由于这段时间市场行情的严峻,为了更高的薪资,我决定开始刷题,并记录下来。 ......
数据结构 算法 前言 结构 数据

记录贴-gpt4 提供的学习内容-基本算法

基础算法 排序算法 查找算法 字符串算法 数学算法 图论算法 动态规划算法 贪心算法 回溯算法 分治算法 线性代数算法 概率论算法 统计学算法 以上是通过提问 gpt4得到的学习 Python 的一些基础算法,直接向 gpt4 提问,通过提问的思路顺延下去把基础算法学好 1.动态规划算法 提问:Py ......
算法 内容 gpt4 gpt