几何 算法

7. 基础算法(II)

## 7.1 位运算 **模板**:[AcWing 90. 64位整数乘法](https://www.acwing.com/problem/content/92/) **题目**:求 $a\times b\bmod p$。$1\le a,b,p\le 10^{18}$。 **思路**: **方法一* ......
算法 基础

数据结构与算法-08堆

## 堆 堆(Heap)是一种特殊的树形数据结构,它满足以下两个条件: 堆是一棵完全二叉树,即除了最后一层,其他层都是满的,最后一层从左到右填满。 堆中每个节点的值都大于等于(或小于等于)其子节点的值,这种性质称为堆序性。 根据堆序性,堆可以分为两种类型: - 大根堆(Max Heap):每个节点的 ......
数据结构 算法 结构 数据 08

文心一言 VS 讯飞星火 VS chatgpt (34)-- 算法导论5.3 1题

# 一、Marceau 教授不同意引理 5.5 证明中使用的循环不变式。他对第1次送代之前循环不变式是否为真提出质疑。他的理由是,我们可以很容易宣称一个空数组不包含0排列。因此一个空的子数组包含一个0排列的概率应是 0,从而第 1次选代之前循环不变式无效。请重写过程 RANDOMIZE-IN-PLA ......
文心 导论 算法 chatgpt VS

数据结构与算法-06散列表

## 散列表 散列表(Hash Table),也称为哈希表,是一种基于哈希函数(Hash Function)实现的数据结构,它支持快速的插入、删除和查找操作。 散列表将每个元素的关键字(Key)通过哈希函数映射到一个固定的位置,称为散列值(Hash Value),然后将元素存储在该位置上。 ![散列 ......
数据结构 算法 结构 数据 06

数据结构与算法-06树及二叉树

## 树和二叉树 完全二叉树: 除了最下层,每一层都满了 满二叉树: 每一层都满了 平衡二叉树: 任意两个节点的高度差不大于1 排序二叉树: ![](https://img2020.cnblogs.com/blog/1064540/202004/1064540-20200421195003247-1 ......
数据结构 算法 结构 数据 06

数据结构与算法-栈

## 栈 堆和栈一样吗? 栈(stack)一般编译器自动分配释放 堆(heap)一般由程序员分配释放,或程序结束后OS释放 LIFO 后进先出 ## 栈的实现 ``` class Stack(object): def __init__(self): self.__list = [] def push ......
数据结构 算法 结构 数据

数据结构与算法-队列

## 队列 FIFO 先进先出 ### 队列的实现 ``` class Queue(object): def __init__(self): self.__list = [] def enqueue(self, item): self.__list.append(item) def dequeue( ......
数据结构 队列 算法 结构 数据

数据结构与算法-链表

## 链表 一个节点分为两部分,数据区和链接区, 链接区指向下一个节点 ### 单项链表 ![](https://img2020.cnblogs.com/blog/1064540/202004/1064540-20200421194754838-1882136796.png) a, b = b, a ......
数据结构 算法 结构 数据

数据结构与算法-顺序表

## 顺序表 用连续单元存储数据(地址连续) 变量名指向起始地址 索引实际是从起始位置的偏移量 1. 一体存储 元素内置 2. 分离存储 元素外置 3. 动态顺序表(可以数据扩充) ## 顺序表的操作 添加元素 末尾添加 O(1) 中间插入O(n) 插入非保序O(1) 删除元素 末尾删除 O(1) ......
数据结构 算法 顺序 结构 数据

C++哈希算法(一)

哈希设计思想:试想如果我们对一个数组进行查询,这个数组里,每一个元素都是一个字符串。我们知道数组最快的检索办法是通过数组的下标进行检索,但是对于这种场景,我们无能为力,只能从头查到尾,从而查询出目标元素。 如果我们要根据名字找到其中的任何一个元素,就需要遍历整个数组。最坏情况下时间复杂度是O(n) ......
算法

D*算法

一、简介“D*算法”的名称源自 Dynamic A Star,最初由Anthony Stentz于“Optimal and Efficient Path Planning for Partially-Known Environments”中介绍。它是一种启发式的路径搜索算法,适合面对周围环境未知或者 ......
算法

FIT9136 算法编程基础

FIT9136 Algorithms andProgramming Foundations inPythonAssignment 3May 20231Table of Contents1. Key Information2. Instruction2.1. User Class2.2. Custom ......
算法 基础 9136 FIT

按键滤波算法

按键信号的采集通常采用GPIO口的输入电平方式,但由于按键电容充放的过程,通常会产生毛刺或抖动。为了去除这些干扰信号,需要对按键信号进行滤波。以下介绍几种常用的按键滤波算法: 1、稳态滤波算法:按键信号采集时,通过实现一个加权器,在采集的多次信号中加权平均每个采集值,一计算出有可靠信息含量的稳态信号 ......
算法 按键

stm32 adc采样滤波算法

1、简单移动平均滤波算法(SMA):采样数据作为滤波器的输入,输出为移动平均值,即取最近一段采样值的平均值作为输出。简单移动平均滤波算法实现简单,计算速度快,但只适用于信号变化缓慢的场合。 // 简单移动平均滤波算法 #define N 10 // 采样点数 float Filter_Arr[N]; ......
算法 stm adc 32

一文理清排序算法中的直接插入、快排和希尔排序的区别

至此,我们我们已经向大家介绍了冒泡排序、选择排序、插入排序、快速排序、希尔排序等五种经典的排序算法。除此以外,还有堆排序、归并排序、桶排序、计数排序等一些经典的排序算法。大家会发现,我们介绍排序算法的步骤和过程都是相同的,基本都包含算法概念、思想和原理、算法步骤,以及编码实现等几个部分。在本篇的最后... ......
算法

算法学习day49动态规划part10-

package LeetCode.DPpart10; /** * 121. 买卖股票的最佳时机 * 给定一个数组 prices ,它的第i 个元素prices[i] 表示一支给定股票第 i 天的价格。 * 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来 ......
算法 动态 part day 49

算法 in Golang:Breadth-first search(BFS、广度优先搜索)

# 算法 in Golang:Breadth-first search # (BFS、广度优先搜索) ## 最短路径问题 Shortest-path problem - 从 A 到 F 点有多条路径 ## 解决问题的算法 Breadth-first Search(广度优先搜索) 1. 将问题建模为图 ......
广度 Breadth-first 算法 Breadth Golang

算法 in Golang:Quicksort(快速排序)

# 算法 in Golang:Quicksort(快速排序) ## Quicksort(快速排序) - 快速排序 O(nlog2^n),比选择排序要快 O(n²) - 在日常生活中经常使用 - 使用了 D & C 策略(分而治之) ## 使用 Quicksort 排序数组 - 不需要排序的数组(也就 ......
算法 Quicksort Golang in

基于mfcc和DTW语音信息特征提取算法matlab仿真

1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 在语音识别(Speech Recognition)和话者识别(Speaker Recognition)方面,最常用到的语音特征就是梅尔倒谱系数(Mel-scale Frequency Cepstral Coeffici ......
算法 语音 特征 matlab 信息

常见排序算法解析

**一、快速排序** 基本思想: 快速排序是一种分治思想的排序算法,它的基本思想是选取一个基准元素,将待排序数组划分为左右两个子数组,其中左边的元素都小于基准元素,右边的元素都大于基准元素,然后再对左右子数组分别进行递归排序,最终得到一个有序的数组。 算法实现: 1. 选取基准元素pivot,一般选 ......
算法 常见

浅谈二次剩余与Cipolla算法

# Preface 数论菜鸡来补一手知识黑洞,二次剩余以前OI时期还真一点没了解过,所以先写个板题先 (虽然当初想着反正到时候有数学巨佬队友带我飞,但多学一点总是好的) 二次剩余又俗称模意义下开根,用于求解$x^2\equiv n\pmod p$这样的方程 但注意一般情况下我们只讨论当$p$为奇素数 ......
算法 Cipolla

2023-06-06:给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。 对位于 (row, col) 的每个结点而言, 其左右子结点分别位于 (row + 1, col -

2023-06-06:给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。 对位于 (row, col) 的每个结点而言, 其左右子结点分别位于 (row + 1, col - 1) 和 (row + 1, col + 1) 树的根结点位于 (0, 0) 。 二叉树的 垂序遍历 ......
结点 序列 算法 col row

算法 in Golang:Recursion(递归)

# 算法 in Golang:Recursion(递归) ## 递归算法 ### 场景:在套娃中找到宝石 ### 可以这样做 - while 没找到: - if 当前项 is 宝石: - return 宝石 - else if 当前项 is 套娃: - 打开这个套娃 - if 当前项 is 宝石: ......
算法 Recursion Golang in

关于Yolov3-Tiny算法

## 1. Yolov3-Tiny模型 - YOLOv3-Tiny 网络模型一共有24层,包括13个卷积层,6个最大池化层,2个route层,1个上采样层以及2个输出Yolo层。 - 一共有13层卷积层,网络参数及计算量适中,适合在ZYNQ嵌入式平台上加速。 ### 1.1 卷积层 - 目的:提取输 ......
算法 Yolov3-Tiny Yolov3 Yolov Tiny

0007.有监督学习之集成学习(Adaboost算法)

一、集成学习概述 1. 集成学习算法定义 集成学习(Ensemble learning)就是将若干个弱分类器通过一定的策略组合之后产生一个强分类器。 弱分类器(weak Classifier)指的就是哪些分类准确率只比随机猜测略好一点的分类器,而强分类器(Strong Classifier)的分类准 ......
算法 Adaboost 0007

回溯算法体型归纳

# 回溯算法 ### 回溯模板 void backtracking(参数) { if (终止条件) { 存放结果; return; } for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) { 处理节点; backtracking(路径,选择列表); // 递归 回溯,撤销处理结果 ......
体型 算法

基于边缘模板匹配算法加速

印度小哥写的基于边缘的模板匹配算法:基于边缘的模板匹配 - 徐唱 - 博客园 (cnblogs.com),估计无需多数。 其中核心匹配算法为: // stoping criterias to search for model double normMinScore = minScore / noOf ......
算法 边缘 模板

代码随想录算法训练营第二十八天|93. 复原 IP 地址

【参考链接】 93. 复原 IP 地址 【注意】 1.切割问题就可以使用回溯搜索法把所有可能性搜出来。 2.startIndex一定是需要的,因为不能重复分割,记录下一层递归分割的起始位置。 3.本题我们还需要一个变量pointNum,记录添加逗点的数量。 4.分割的段数作为终止条件。pointNu ......
随想录 训练营 随想 算法 代码

五. 图像空间域锐化算法

# 五. 图像空间域锐化算法 **目的:**增强图像的边缘或者轮廓。 **数学意义:**通过微分使得图像边缘更加突出、清晰。因为图像边缘灰度变化率更高,显然微分后得到的值相较于其它部分更大。 ## 5.1 梯度 **数学定义:** 对于图像$f(x,y)$,在点$(x,y)$处的梯度定义为: $$ ......
算法 图像 空间

Algorithm_03--C#排序算法(选择排序)

选择算法本质:1、找到数组中最小的元素 2、将其放在第一位 3、找到数组第二小的元素 4、将其放在第二位 5、以此类推,直到整个数组排序 ......
算法 Algorithm 03