算法 常用

【字节二面算法】NO662 二叉树最大宽度

[字节二面算法] 662. 二叉树最大宽度 给你一棵二叉树的根节点 root ,返回树的 最大宽度 。 树的 最大宽度 是所有层中最大的 宽度 。 每一层的 宽度 被定义为该层最左和最右的非空节点(即,两个端点)之间的长度。将这个二叉树视作与满二叉树结构相同,两端点间会出现一些延伸到这一层的 nul ......
宽度 字节 算法 662 NO

「学习笔记」SPFA 算法的优化

与其说是 SPFA 算法的优化,倒不如说是 Bellman-Ford 算法的优化。 栈优化 将原本的 bfs 改为 dfs,在寻找负环时可能有着更高效的效率,但是最坏复杂度为指数级别。 void dfs_spfa(int u) { if (fg) return; vis[u] = true; for ......
算法 笔记 SPFA

linux的基础结构和常用的命令基本 Linux 命令的列表:

linux的基础结构和常用的命令基本 Linux 命令的列表: Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础 ......
命令 常用 结构 基础 linux

线索化二叉树的递归算法

// 线索化二叉树的递归算法 #include <stdio.h> #include <malloc.h> typedef struct BiTNode { int data; struct BiTNode *lchild, *rchild; // 存储二叉树的左孩子和右孩子 } BiTNode, ......
算法 线索

m分别使用meanshift和camshift两种算法实现人员跟踪并输出人员移动曲线matlab仿真

1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 meanshift算法其实通过名字就可以看到该算法的核心,mean(均值),shift(偏移),简单的说,也就是有一个点 ,它的周围有很多个点 我们计算点 移动到每个点 所需要的偏移量之和,求平均,就得到平均偏移量,( ......
人员 算法 曲线 meanshift camshift

文心一言 VS chatgpt (13)-- 算法导论3.1 8题 3.2 1题

八、可以扩展我们的记号到有两个参数n和m的情形,其中的n和m可以按不同速率独立地趋于无穷。对于给定的函数g(n, m),用O(g(n, m))来表示以下函数集: O(g(n, m)) = { f(n, m): 存在正常量c、和,使得对所有n>=n0或m>=m0,有 0<=f(n,m)<=cg(n,m ......
文心 导论 算法 chatgpt 3.1

数据结构与算法复习--(2)

#算法和算法分析 算法的定义 对特定问题求解方法和步骤的一种描述,它是指令的有限序列。其中每个指令表示一个或多个操作。 算法的描述 自然语言:英语、中文 流程图:传统流程图、NS流程图 **伪代码:类语言:**类C语言 **程序代码:**C语言程序、Java语言程序 算法与程序 算法是解决问题的一种 ......
数据结构 算法 结构 数据

算法入门

算法介绍 算法(Algorithm):⼀个计算过程,解决问题的⽅法 Niklaus Wirth: “程序=数据结构+算法” 时间复杂度 简单总结 时间复杂度是⽤来估计算法运⾏时间的⼀个式⼦(单位)。 ⼀般来说,时间复杂度⾼的算法⽐复杂度低的算法慢。 常⻅的时间复杂度(按效率排序):O(1)<O(lo ......
算法

ssh key exchange算法问题

系统ssh服务器和xshell版本不匹配 解决: 1、升级ssh 2、更换xshell ......
算法 exchange 问题 ssh key

Gradio:轻松实现AI算法可视化部署

如何将你的AI算法迅速分享给别人,让对方体验,一直是一件麻烦事儿。 首先大部分人都是在本地跑代码,让别人使用你的模型,以往有这三种方案: 上github 将代码打包或者封装成docker后,用QQ/百度云/U盘传输 学习前后端知识,写个前端界面,买个域名,用flask这样微服务框架快速部署,看情况结 ......
算法 Gradio

数据结构与算法基础复习--(1)

#基本术语 ##1.数据(Data) 数据 是能输入计算机且能被计算机处理的各种符号的集合 信息的载体 是对客观事物符号化的表示 能够被计算机识别、存储和加工 包括: 数值型的数据:整数、实数等 非数值型的数据:文字、图像、图形、声音等 ##2.数据元素 数据元素 是数据的基本单位,在计算机程序中通 ......
数据结构 算法 结构 基础 数据

Docker的一些常用命令

Docker 是一种容器化技术,需要使用许多命令来管理和操作容器。下面是对一些常用的 Docker 命令和它们的含义的解释: -v:用来将文件或者目录挂载到 Docker 容器中,使其可以在 Docker 容器内部进行访问。格式为-v /host/path:/container/path,其中/ho ......
命令 常用 Docker

常用的正则表达式

开发过程中中常用正则式 身份证 弱校验:15位或18位,最后一位为校验位可能为数字或字符X (^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$) 手机号 ^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]| ......
正则 表达式 常用

Raid卡常用命令

1. 创建删除raid #删除raid /opt/MegaRAID/MegaCli/MegaCli64 -CfgLdDel -L1 -A0 L1:1为RIAD组 Target Id 号 #创建raid5 /opt/MegaRAID/MegaCli/MegaCli64 CfgLDAdd -r5 [41 ......
命令 常用 Raid

人体跟踪算法的描述

因为前一部分创新点用的是人体姿态估计,所以输出必定是关键点坐标,因此跟踪部分必须是关键点跟踪。 方法一:对前一帧和后一帧比较,进行相似度匹配。这样是无法解决遮挡问题的。看过多篇文章都是基于这个思路。 方法二:选取一个关键点去表示人体去跟所有帧所有人进行相似度估计。 ......
算法 人体

二分算法

整数二分 二分与单调性的关系: 如果有单调性, 一定可以二分; 可以二分的题目, 不一定非得有单调性 二分的本质: 边界 在区间上定义了某种性质, 该性质在区间右半边满足, 左半边不满足, 使整个区间一分为二 二分可以寻找性质的边界(既可以寻找边界 i , 也可以寻找边界 j ) ① 寻找边界 i ......
算法

欧几里得算法和扩展欧几里得算法

欧几里得算法基本原理和证明 代码实现: #include<iostream> using namespace std; int gcd(int a,int b){ return b?gcd(b,a%b):a; } int main(){ int x,y; cin>>x>>y; cout<<gcd(x ......
算法

排序算法

快速排序 //快速排序算法模板 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 ......
算法 绘画 大话 原理 技术

线程常用方法join 和threadLocal

从源码中可以得知,如果想要join方法正常生效,调用join方法的线程对象必须已经调用了start()方法并且未进入终止状态。 扩展: 从join方法的源码来看,join方法的本质调用的是Object中的wait方法实现线程的阻塞,wait方法的实现原理在后续的文章中在说详细阐述。**但是我们需要知 ......
线程 threadLocal 常用 方法 join

C++中的STL容器和算法

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

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

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

[2core]加解密算法

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

MySQL常用数据库语句

==数据库==1、创建数据库create database [IF NOT EXISTS] 数据库名; 2、删除数据库drop database [IF EXISTS] 数据库名; 3、切换数据库select database(); 4、查询数据库show databases; —————————— ......
语句 常用 数据库 数据 MySQL

KMP算法

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

PyTorch常用操作

数据集加载 1. 网络数据集 加载数据集:https://pytorch.org/vision/stable/datasets.html import torchvision.datasets as datasets import torchvision.transforms as transfor ......
常用 PyTorch

一文彻底搞懂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