算法 标记 原理 垃圾

排序算法

快速排序 //快速排序算法模板 void quick_sort (int q[],int l,int r) { if(l>=r)return; int i=l-1,j=r+1,x=q[l]; //x=q[r] while(i<j) { do i++; while(q[i]<x); do j--; w ......
算法

大话AI绘画技术原理与算法优化

引子 博主很长一段时间都没有发文,确实是在忙一些技术研究。 如标题所示,本篇博文主要把近段时间的研究工作做一个review。 看过各种相关技术的公关文章,林林总总,水分很多。 也确实没有多少人能把一些技术细节用一些比较通俗的语言阐述清楚。 故此,再一次冠以大话为题,对AI绘画主要是stable di ......
算法 绘画 大话 原理 技术

vue3源码-一、响应式原理reactive的实现

reactive的实现 使用: 使用reactive()函数创建一个响应式对象。 import { reactive } from 'vue' export default { // `setup` 是一个专门用于组合式 API 的特殊钩子函数 setup() { const state = rea ......
源码 reactive 原理 vue3 vue

Service Worker 实践与原理

Service Worker 在2014年,W3C公布了service worker的草案,service worker提供了很多新的能力,使得web app拥有与native app相同的离线体验、消息推送体验。 service worker是一段脚本,与web worker一样,也是在后台运行。 ......
原理 Service Worker

C++中的STL容器和算法

C++ STL(标准模板库)提供了一组丰富的容器和算法,使得开发者能够更加高效地编写程序。本文将介绍STL中的一些常用容器和算法。 容器 vector vector是一个动态数组,可以在运行时调整大小。它的优点在于可以快速地访问元素,缺点是在插入和删除元素时需要移动后面的元素。 #include < ......
算法 容器 STL

Python 希尔排序(Shell Sort)原理以及应用

##希尔排序的原理: 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序; 随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 希尔排序的原理是将待排序的序列按照一定间隔分成若干个子序列,对每个子序列使用插入排序进行排序,缩小间隔后再次进 ......
原理 Python Shell Sort

一文带你了解区块链中15种共识算法

所有主要的区块链共识算法解释 区块链技术席卷全球,提供了一种去中心化且安全的信息存储和传输方式。它还彻底改变了交易的执行方式,随之而来的是广泛的共识算法。在这里,共识算法在确保区块链网络的完整性方面发挥着关键作用。在本文中,我们将探讨所有主要类型的区块链共识算法、它们的含义、优点、缺点,以及为什么它 ......
区块 共识 算法

[2core]加解密算法

本文主要记录从.netframework迁移到.net6后,加解密算法的跨平台测试,如AES和RSA算法。因为RSA使用了BouncyCastle类库提供的实现,所以并没有遇到什么问题。 完成加解密算法跨平台测试,迁移工作算是告一段,也标志着从.netframework迁移.net6工作完毕。 迁移 ......
算法 2core core

KMP算法

KMP算法用于解决字符串匹配问题, str1 某个字符串是否与 str2 一样, 如果一样, 返回 str2 开始的位置 //KMP算法模板 int n,m; char s[N],p[M]; int ne[M]; //s[]是长文本,p[]是模式串(短串),n是s的长度,m是p的长度 //读入字符串 ......
算法 KMP

一文彻底搞懂ZAB算法,看这篇就够了!!!

最近需要设计一个分布式系统,需要一个中间件来存储共享的信息,来保证多个系统之间的数据一致性,调研了两个主流框架Zookeeper和ETCD,发现都能满足我们的系统需求。其中ETCD是K8s中采用的分布式存储,而其底层采用了RAFT算法来保证一致性,之前已经详细分析了Raft算法的原理,今天主要仔细分 ......
算法 ZAB

[练习记录] 《算法竞赛进阶指南》打卡活动

89. a^b 题目大意 给 $a,b,p$ 求 $a^b \mod p$。 思路 可以直接快速幂。当模数 $p$ 为 $1$ 的时候特判一下。 代码 ll a, b, mod; ll qpow(ll a, ll b) { ll res = 1; while (b) { if (b & 1) res ......
算法 指南

分块+莫队算法

分块 复杂度$O(n \sqrt n)$ 主要目的是解决一些区间操作问题 把区间拆分成 $\sqrt{n}$ 大小的块 每次碰到修改的操作,对于散块,直接暴力操作,对于整块,那么用一个 $tag$ 进行标记即可 也就是说对于一个操作 $[l,r]$ 来说 我们需要进行操作主要分三步: 暴力操作头散块 ......
算法

Gusfield算法学习

算法详解 等价流树正如其名,树上两点间的路径上的边权最小值为图上两点间的最小割。 Gusfield算法就是建等价流树的一种算法。设当前正在处理的集合为 $S(|S|\ge 2)$,从 $S$ 中任选两个点 $x,y$,求出 $x,y$ 间的最小割也就是最大流 $flow$,此时在最小割树中加入一条从 ......
算法 Gusfield

Berlekamp–Massey 算法 小记

神秘算法,模拟赛对着死磕了3.5h 然后发现是高科技,大家都不会,但是大家都会 T3 ,输麻了。 这个算法是一个增量构造的过程,我们尝试维护前 $i-1$ 项的递推式,然后对于加入 第 $i$ 项后调整。 具体的,假设我们有一个数列 $1,2,4,10,24,50$,最初我们的递推式是 ${}$。 ......
小记 算法 Berlekamp Massey

stronix就尼玛一垃圾芯片厂商,能不能别把spi的数据写作sda了?能不能别把spi的时钟写成sck了?连带汇晶一起说着,没个争气的

真尼玛的气死了 搞了个显示屏,商家的数据手册写的是串行通讯,,引脚是sda和scl 我一看,这尼玛的是iic啊,打开cubemx 设计 然后画图打板,一气呵成,回来撸代码,死活不显示 我再去问卖家,奥,芯片是ST7567的,好吧,去官网看一下 Mono STN-LCD Driver IC - Sit ......
时钟 spi 芯片 垃圾 厂商

三维重建原理和算法

原理 采集深度图像:使用深度相机采集场景深度信息,并将其转换为深度图像。 点云生成:根据深度图像,将场景中的点云数据进行生成。 点云滤波:对于采集到的点云数据进行滤波处理,去除无效数据点。 点云配准:如果需要将多个点云数据融合为一个完整的点云模型,需要进行点云配准操作,使得各个点云数据之间能够对齐。 ......
算法 原理

HMM模型原理

隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。隐马尔可夫模型(HMM)可以用五个元素来描述,包括2个状态集合和3个概率矩阵:1. 隐含状态 S、2. 可观测状态 O、3. 初始状 ......
模型 原理 HMM

jQuery轮播图(模仿滑动窗口算法)

``` const status = [ "left:0px;", "left:10px;", "left:20px;", "left:30px;", "left:40px;", ]; const list = $("#carousel > ul > li"); const len = list.l ......
算法 jQuery

[ML从入门到入门] 支持向量机:SMO算法的收敛性分析

引言 上一篇文章我们介绍了 SMO 算法,作为其姊妹篇,本文将对 SMO 算法的收敛性进行扼要地分析,同时,希望能为读者提供新的角度去理解 SMO 算法的原理。 证明思路来自于《Convergence of a Generalized SMO Algorithm for SVM Classifier ......
向量 算法 SMO

基于模拟退火算法的车间调度优化matlab仿真,输出甘特图

1.算法仿真效果 matlab2022a仿真结果如下: 优化目标: 最小平均流动时间 粒子数:100 循环代数:500 变异率:0.35 变异变换对数:3 模拟退火初始值:1000 模拟退火终值:0 最小平均流动时间:43 最大完工时间:61 最小间隙时间:60 最优粒子3 1 3 6 4 5 3 ......
算法 车间 matlab

基于LBP人脸特征提取算法的人员身份信息验证matlab仿真

1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 LBP(Local Binary Patterns,局部二值模式)是提取局部特征作为判别依据的。LBP方法显著的优点是对光照不敏感,但是依然没有解决姿态和表情的问题。不过相比于特征脸方法,LBP的识别率已经有了很大的提 ......
人脸 算法 特征 身份 人员

STL的vector容器的实现原理是什么,他是怎么扩容的?详细图解展示!!!

实现原理: vector底层实现原理是一维数组。 vector通过一个连续的数组存放元素,如果这个数组的容量已满,再插入数据的时候,就要去申请一块更大的内存,然后把原来数组的数据复制到新数组中来,再释放原来数组的内存。 那么申请(扩容)多大的空间的比较合适呢? 如果我们扩容的空间太小了,比如原来的数 ......
容器 原理 vector STL

一文看懂低代码,5分钟从入门到原理全搞定

全球低代码市场已经走过了近20年,中国低代码市场近5年经历了百花齐放的广泛探索阶段,更旺盛的市场需求逐步在被激发。现在,让我们按下暂停键,看看这些产品给我们呈现了低代码市场一幅怎样的百景图。 低代码平台简介 广义上的低代码平台包括低代码平台和零代码平台,它们都属于APaaS(应用平台即服务),两者的 ......
原理 代码

Gusfield算法学习

算法详解 感觉最小割树是个很神奇的东西。 最小割树有一个性质:原图上的两点间的最小割大小和方案正好有一种是树上对应两点间的最小割大小和方案。 那么怎么建出这样的树呢?可以用到Gomory-Hu Tree。但我们通常只需要用到大小,这时候我们可以建出等价流树。 Gusfield算法就是建等价流树的一种 ......
算法 Gusfield

JAVA AES 加密算法实现

import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; import java.nio.charset.StandardCharsets ......
算法 JAVA AES

Golang GMP原理(1)

Golang GMP原理(1) 概念梳理 线程 线程一般指内核级线程,核心如下: 操作系统的最小调度单元 创建 销毁 调度由内核完成,cpu要完成内核态与用户态的转换 可充分利用多核,实现并行 协程 协程线程对应 协程,又称为用户级线程,核心点如下: 与线程存在映射关系,为M:1 创建、销毁、调度在 ......
原理 Golang GMP

二分查找算法讲解及其C++代码实现

二分查找算法是一种常用的查找算法,也被称为折半查找。它可以在有序的数组或列表中快速查找需要的元素。 算法描述: 首先确定数组的中间位置mid=(left+right)/2; 然后将要查找的值key与中间位置的值进行比较; 如果key等于中间位置的值,则查找成功,返回mid; 如果key小于中间位置的 ......
算法 代码

UE的各种标记词

1.ClampMin、ClampMax(最大值、最小值) 只能用在Float和int类型的变量,限制这个值的一个范围 用法:使用Meta进行修饰,与DisplayName一样。 2.EditCondition(控制属性显示隐藏) 用在“meta”中,可以让这个参数被所关联的bool变量控制是否在编辑 ......
标记

C# 卡车装车算法2

1. 创建一个货物类,包含长、宽、高、重量、颜色、标签等属性,并定义一个列表用于存储所有货物对象。 public class Cargo { public float length; public float width; public float height; public float weig ......
卡车 算法

《啊哈 算法》读书笔记 附PDF #C2

《啊哈算法》这本书是由Northeastern大学的教授哈林顿(Harrrington)所著,是一本在自学算法中十分有用的工具书。阅读完此书后,我颇有感触,下面就来谈谈我的读后感体验。 首先,本书的内容非常易懂。作者通过通俗易懂的语言和生动形象的图片,将复杂的算法理论一步步讲解,使人们能够轻松理解难 ......
算法 笔记 PDF C2