算法 个人kmp

去重算法--给出一段英文连续的英文字符窜,找出重复出现次数最多的字母

输入 : afjghdfraaaasdenas 输出 : a function findMaxDuplicateChar(str) { if(str.length == 1) { return str; } let charObj = {}; for(let i=0;i<str.length;i++ ......
算法 字母 字符 次数

lazarus版SM4加密算法

根据网上的SM4代码移植到lazarus使用,lazarus版可以跨平台,截图是在龙芯3A5000运行。使用非常简单,只需要在uses添加sm uses sm; 加密: Memo1.Text := SM.SM4.ECB_encodeAnsiString(edit1.text, edit2.text) ......
算法 lazarus SM4 SM

【协同过滤】基于评分物品算法理解

# 导入必要的库 import numpy as np # 预测用户对物品的评分 # 定义一个函数,输入目标用户和目标物品的ID,返回预测的评分值 def predict_user_rating(user_count,user_id,item_id): # 创建用户数*用户数的数组 similari ......
算法 物品

【思维题、KMP】P3526 [POI2011]OKR-Periodicity 题解

P3526 [POI2011]OKR-Periodicity 题解 前言 一道非常厉害的思维题。看题解得到了一些提示搞出来了。 作为 2011 年的题还是很厉害的。 约定 定义 $s[l,r]$ 为 $s$ 当中下标为 $[l,r]$ 的字符组成的子串。 $st,ed$ 表示字符串的某段前缀和后缀。 ......

基于隶属度函数模糊CMAC神经网络算法matlab仿真

1.算法描述 CMAC神经网络具有小脑的机能,因而,被广泛应用于机器人的运动控制。或者反过来说,正是为了机器人的运动控制,Albus构造了CMAC神经系统,以模拟脊椎动物的小脑机能。 正如Albus所说的:“然而,对我来说,CMAC最重要的特征是,它提供了一种认识和理解脑计算的途径,导致了一系列关于 ......
神经网络 算法 函数 神经 matlab

算法基础(3)

双指针算法 O(n) 采用双指针算法的前提是具有单调性 题目:提取单词 #include <iostream> #include <string.h> using namespace std ; const int N = 1e3+10; int main(){ char str[1000]; ge ......
算法 基础

笔试算法小题

1.从尚未排序的N名学生的考试分数中挑出排名第K的分数,平均时间复杂度最优可以达到多少?( ) A、O(NlogN) B、O(NK) C、O(N) D、O(N^2) 答: 在尚未排序的N名学生的考试分数中挑出排名第K的分数,平均时间复杂度最优的算法是使用快速选择(Quickselect)算法,其平均 ......
笔试 算法

机器学习算法(四): 基于支持向量机的分类预测(SVM)

机器学习算法(四): 基于支持向量机的分类预测 本项目链接:https://www.heywhale.com/home/column/64141d6b1c8c8b518ba97dcc 1.相关流程 支持向量机(Support Vector Machine,SVM)是一个非常优雅的算法,具有非常完善的 ......
向量 算法 机器 SVM

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

#代码随想录算法训练营 代码随想录算法训练营Day52 动态规划| 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组 300.最长递增子序列 题目链接:300.最长递增子序列 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列, ......
随想录 训练营 随想 算法 代码

CVPR 2023 | 标注500类,检测7000类!清华大学等提出通用目标检测算法UniDetector

前言 本文向大家介绍一篇今天新出的非常有意思的 CVPR 2023 的论文,相比于传统的目标检测算法,训练时标注了几个类别,就只能检测几个类别,这篇论文属于通用目标检测的范畴。通过在训练过程中图像和文本对齐,它可以自动扩展到检测那些视觉标注中没有出现的类别。这将有效帮助视觉系统目标检测能力的迁移,感 ......
算法 UniDetector 目标 大学 CVPR

个人简介和项目介绍

你好呀,亲爱的陌生人,本文分为三部分, 第一部分为个人简介,简单的介绍个人的风雨编程路 第二部分为项目简介,介绍简历中的项目 第三部分为其他做过的项目介绍,可以略过 一、个人简介 某双非本科计科程序猿一枚,目前正积极寻求C++服务端暑期实习中,以下为个人学习的风雨编程路简略介绍,帮助您快速了解本人是 ......
个人简介 简介 项目 个人

Python小练习:Sinkhorn-Knopp算法

Python小练习:Sinkhorn-Knopp算法 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 本文介绍Sinkhorn-Knopp算法的Python实现,通过参考并修改两种不同的实现方法,来真正弄懂算法原理。详细的原理部分可参考文末给出的参考文 ......
Sinkhorn-Knopp 算法 Sinkhorn Python Knopp

C++primer 10泛型算法

泛型算法使用的关键一点:泛型算法不会直接调用容器的操作,而是通过迭代器来访问,修改,移动元素。 我们知道在容器初始化或者赋值的时候,采用区间初始化、赋值,将对容器类型与元素类型要求不那么严格。如char*型字符串可以给 元素为string型赋值/初始化,int型能给元素为double型赋值/初始化等 ......
算法 primer

A3C——异步A2C算法

A2C算法是一种强化学习算法,全称为Advantage Actor-Critic算法。它结合了演员评论算法和优势函数,用于学习策略以最大化预期奖励。在A2C算法中,有两个神经网络:一个用于演员,一个用于评论家。演员网络基于当前状态选择动作,评论家网络评估当前状态的价值。优势函数用于估计某个动作相对于 ......
算法 A3C A2C A3 3C

【go】snowflake和snoyflake雪花算法学习与go实现

预备知识: Monotonic Clocks,即单调时间,所谓单调,就是只会不停的往前增长,不受校时操作的影响,这个时间是自进程启动以来的秒数 参考文章:https://www.simpleapples.com/2018/10/26/understand-time-struct-in-go/ 雪花算 ......
算法 雪花 snowflake snoyflake

NAND Flash 寿命算法——Wear leveling

由于闪存的可擦写次数是有限的,当某些数据被频繁修改时容易导致对应的块很快被耗尽使用寿命,从而导致整块盘无法使用,所以需要有一种技术来将这些块的擦写均摊一下,延长使用寿命。 首先看几个相关的基本概念: 因为闪存不能覆盖写,如果要修改已有的数据需要将原有的数据擦除再写入新的数据。 被频繁修改的数据很烫, ......
算法 寿命 leveling Flash NAND

算法笔记的笔记——第9章 树

概念 定义 树枝分叉处、树叶、树根抽象为结点(node) 树根抽象为根结点(root),一棵树最多存在一个根结点 树叶抽象为叶子节点(leaf),不再延伸出新的结点 茎干和树枝抽象为边(edge),一条边只用来连接两个结点 树中的结点不能被边连成环 子结点(child)、子树(subtree) 性质 ......
笔记 算法

算法笔记的笔记——第8章 搜索专题

深度优先搜索(DFS) 枚举所有完整路径以遍历所有情况 栈 实现 使用递归可以实现深度优先搜索 可以通过条件限制节省DFS计算量,方法称作剪枝 广度优先搜索(BFS) 优先访问能直接到达的所有结点 队列 实现 void BFS(int s) { queue<int> q; q.push(s); wh ......
笔记 算法 专题

算法笔记的笔记——第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 天的股票价格 。 设计一个算 ......
随想录 训练营 随想 算法 代码

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

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

kmp

1.模板题: 给定两个数字序列 a[] 和 b[],b[] 有可能整体作为一个连续子序列出现在了 a[] 中,现在请你找出 b[] 在 a[] 中第一次出现的位置(起始位置从 1 开始计数),如果一次都没有出现,请输出 -1。 输入格式 第一行包含一个数字 T,表示测试用例的个数。对于每组测试用例, ......
kmp

【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] 为栗 ......
线段 算法

学习中遇过的问题以及个人理解(待更新......)

1、谈谈对进程号和端口号的理解 端口号唯一,就如同身份证号,进程号不唯一,如同姓名,一个身份证号只能对应一个姓名,但是姓名不唯一,相同姓名随处可见,也有姓名比较罕见的,但是至少会对应一个身份证号,同姓名的则会对应多个身份证号,未出生的则会有预留的身份证号等待着他们,所以总结就是:端口号只能对应一个进 ......
问题 个人

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

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

Hexo手摸手详细搭建教程,0成本搭建属于自己的个人博客

必备条件 Node.js 官网下载地址:Node.js Git,官网下载地址:Git GitHub账号,可以在Github进行注册 可以在cmd终端输入node -v和git -v来验证是否已经安装完成,如果显示版本号则代表安装成功。 安装Hexo 在一个合适的位置创建一个文件夹以存放博客文件,所有 ......
成本 教程 个人 博客 Hexo