无人机 公共场所 算法 密度

数据结构与算法 --- 递归(二)

## 引言 上文[数据结构与算法 递归(一)](https://niuery.com/post/51) 讲述了什么是递归算法,如何编写递归算法及如何写好递归算法,本文着重讲述一下如何避免递归过深导致的堆栈溢出问题。 ## 探究产生堆栈溢出的原因 函数调用采用**函数调用栈**来保存当前“快照”(局部 ......
数据结构 算法 结构 数据

数据结构与算法 --- 组数、链表、栈和队列(一)

数组、链表、栈和队列是四种基础数据结构,他们是高级、复杂的数据结构和算法的基础。本篇先来讲述**数组,链表,及算法的优化策略**。 ### 数组 #### 定义 **数组:数组是一种线性表数据结构,它用一组连续的内存空间存储一组具有相同类型的数据。** 定义中有三个关键词: - **线性表** - ......
数据结构 队列 算法 结构 数据

数据结构与算法 --- 组数、链表、栈和队列(二)

继[数据结构与算法 组数、链表、栈和队列(一)](https://niuery.com/post/41)讲解完数组,链表及算法的优化策略之后,接下来继续讲解**两种特殊的线性表结构,栈和队列**。 ## 栈 对“栈”有一个很形象的比喻,栈就像一摞叠在一起的盘子,放盘子时,只能放在上面,不能将盘子插入 ......
数据结构 队列 算法 结构 数据

数据结构与算法 --- 算法绪论

# 开场白 算法介绍从一个简单加法开始,现要求写一个求1+2+3+..+100的结果的程序,那我可以这样写: ```csharp int count = 100; int sum = 0; for (int i =1; i 这就是最简单的程序之一,这就是算法。但是它是最优的吗?是最高效的吗? 儿时数 ......
算法 数据结构 绪论 结构 数据

数据结构与算法 --- 复杂度分析专题(一)

## 意义 算法复杂度分析的意义在于评估算法的执行效率,找出最优解决方案,是优化算法和改进程序性能的基础。通过对算法的时间复杂度和空间复杂度进行分析,可以帮助我们预估该算法运行所需的资源,从而提高程序的性能。 ## 大O复杂度表示法 ### 例1 有如下代码 ```csharp 1 public i ......
复杂度 数据结构 算法 结构 专题

数据结构与算法 --- 复杂度分析专题(二)

title: 数据结构与算法 复杂度分析专题(二) category: 数据结构与算法 tags: 算法 updatedAt: 2023-05-13T12:54:18.943Z createdAt: 2023-04-09T13:52:05.115Z ## 引言 在上一篇[复杂度分析专题(一)](ht ......
复杂度 数据结构 算法 结构 专题

C语言中的排序算法及其实现方法

C语言中的排序算法及其实现方法 排序算法是计算机科学中的重要部分,它们在数据处理和算法设计中起着关键作用。在C语言编程开发中,掌握不同的排序算法及其实现方法对于提高代码质量和性能至关重要。本文将围绕C语言中的排序算法展开讨论,介绍几种常见的排序算法及其实现方法。 1C语言中的排序算法及其实现方法 首 ......
算法 语言 方法

dp-最长公共子序列

最长公共子序列 [toc] ## 问题描述 最长公共子序列(LCS)是一个在一个序列集合中(通常为两个序列)用来查找所有序列中最长子序列的问题。一个数列 ,如果分别是两个或多个已知数列的子序列,且是所有符合此条件序列中最长的,则称为已知序列的最长公共子序列。 最长公共子序列问题是一个经典的计算机科学 ......
序列 dp

机器学习实战5-KMeans聚类算法

# 概述 聚类 VS 分类 ![3.png](https://img1.imgtp.com/2023/08/12/TLpVN5O2.png) ![5.png](https://img1.imgtp.com/2023/08/12/HAO6YrvZ.png) 有监督学习 VS 无监督学习 ![4.png ......
算法 实战 机器 KMeans

Maven引用公共模块

项目结构: ![](https://img2023.cnblogs.com/blog/2909814/202308/2909814-20230813144748902-1171425326.png) Common的pom: ![](https://img2023.cnblogs.com/blog/2 ......
模块 Maven

分治算法——241. 为运算表达式设计优先级

分治思路:对于一个算式来说,总是可以根据运算符分为左右两部分算式,接着分别计算结果并合并;每一个结果都是一个数组,包含这个算式的所有可能结果,计算时将左右两部分排列组合;递归的终点是字符串是纯数字(即分到一个算式中只剩下一个数字),直接返回。 比如示例中的2*3-4*5,有下面的分法: 1、分为2与 ......
优先级 表达式 算法 241

Raft 算法

> 论文 《In Search of an Understandable Consensus Algorithm》,发表于2014年 相比于 Paxos,Raft 最大的特性就是易于理解。为了达到这个目标,Raft主要做了两方面的事情: 1. 问题分解:把共识算法分为三个子问题,分别是领导者选举 ( ......
算法 Raft

文心一言 VS 讯飞星火 VS chatgpt (75)-- 算法导论7.2 4题

# 四、如果用go语言,银行一般会按照交易时间来记录某一账户的交易情况。但是,很多人却喜欢收到的银行对账单是按照支票号码的顺序来排列的。这是因为,人们通常都是按照支票号码的顺序来开出支票的,而商人也通常都是根据支票编号的顺序兑付支票。这一问题是将按交易时间排序的序列转换成按支票号排序的序列,它实质上 ......
文心 导论 算法 chatgpt VS

算法刷题:数组题(持续更)

算法刷题系列: - [算法刷题:链表题(持续更)](https://www.cnblogs.com/luoyicode/p/17606982.html) *** 力扣链接: [删除有序数组中的重复项](https://leetcode.cn/problems/remove-duplicates-fr ......
数组 算法

C#快速排序算法

快速排序实现原理 快速排序(Quick Sort)是一种常用的排序算法,它基于分治的思想,通过将一个无序的序列分割成两个子序列,并递归地对子序列进行排序,最终完成整个序列的排序。 其基本思路如下: 选择数组中的一个元素作为基准(pivot)。 将数组中小于等于基准的元素放在基准的左边,将大于基准的元 ......
算法

[算法考研笔记]mm算法随笔[成绩划分][回溯0-1][得分][字段和][聪明小偷][股票买卖]

# mm算法随笔 ## 学习笔记(回溯算法) 1. 回溯 递归1.递归的下面就是回溯的过程 2. 回溯法是一个 纯暴力的 搜索、有的时候暴力求解都没有办法,用回溯可以解决。 3. 回溯法解决的问题: * 组合问题 如:1234 两两组合 * 切割问题 如:一个字符串有多少个切割方式 ,或者切割出来是 ......
算法 考研笔记 字段 得分 小偷

a.LD编辑距离算法

# LD算法 参考文档:https://www.cnblogs.com/grenet/archive/2010/06/03/1750454.html ## 原理 LD算法(Levenshtein Distance)又成为编辑距离算法(Edit Distance)。它是以字符串A通过插入字符、删除字符 ......
算法 LD

基于GMM高斯混合模型的语音信息身份识别算法的matlab仿真

1.算法理论概述 一、引言 语音信息身份识别是指通过声音信号对个体进行身份识别的过程。目前,语音信息身份识别已经成为语音处理领域的一个热门研究方向。在语音信息身份识别中,高斯混合模型(GMM)是一种被广泛应用的方法。本文将详细介绍基于GMM的语音信息身份识别算法的实现步骤和数学原理。 二、GMM模型 ......
算法 语音 模型 身份 matlab

最近公共祖先

### 定义 对于两个点,LCA是它们的祖先(或自己)中距离他们最近的点 ### 不妙做法 查询 $O(n)$ #### 向上标记 Rt. 一个节点不断往父节点跑,标记节点 另一个节点也是往上跑碰到标记过的就是LCA #### 向上调整 Rt. 深度深的节点往上调,调到深度一样 如果调成一样了第一个 ......
祖先

最长公共子序列

## 最长公共子序列 ### 题目描述 给定长度为 $n$ 的数组 $a$,长度为 $m$ 的数组 $b$,求其最长公共子序列长度 ### DP $f[i][j]$ 表示 $a$ 前 $i$ 项和 $b$ 前 $j$ 项的最长公共子序列长度 因为如果我们要在序列尾巴上加元素是不跟前面选了什么有关系的 ......
序列

acwing 116.飞行员兄弟 (算法竞赛进阶指南 p48 t1 ) 题解

###原题链接 https://www.acwing.com/problem/content/description/118/ ### 题目描述 “飞行员兄弟”这个游戏,需要玩家顺利的打开一个拥有16个把手的冰箱。 已知每个把手可以处于以下两种状态之一:打开或关闭。 只有当所有把手都打开时,冰箱才会 ......
题解 飞行员 算法 兄弟 指南

压缩算法

![](https://img2023.cnblogs.com/other/1622290/202308/1622290-20230812192630939-664255415.png) ## 思路 因为这个字符串可以被多层压缩,所以我们要找到最里层的中括号。刚开始的思路是利用栈,从前往后找,遇到` ......
算法

(转载)博客园的积分和排名算法探讨,积分是怎么计算的?

原文地址: http://www.cnblogs.com/huangcong/ 我们先来看看现行规则,用公式表示为: BlogScore = BeRead + 10 * BeComment + 50 * CommentBlogScore:博客积分BeRead:个人博客所有随笔和文章的阅读数之和BeC ......
积分 算法 博客

【总结】排序算法的时间复杂度和空间复杂度

###排序算法的时间复杂度和空间复杂度 最好时间复杂度最坏时间复杂度 平均时间复杂度 空间复杂度是否为稳定排序是否为原地排序 冒泡排序 $O(n)$ 初始数组正序 $O(n^2)$ 初始数组逆序 $O(n^2)$ $O(1)$ 原地使用数组,无额外内存开销 是 是 插入排序 是 是 选择排序 $O( ......
复杂度 算法 时间 空间

双指针算法

联想归并排序,快排 目的:优化到O(n) 提高效率 O(n方)优化到O(n) 一个小例子,输入abc def ghi然后输出三行分别输出这三个单词 1 #incldue <iostream> 2 #include <string.h> 3 using namespace std; 4 int mai ......
指针 算法

AXI传输总结+页面置换算法+不定态判定+PATH管理

# AXI传输总结 AXI这部分我没有深入解除过,只是多多少少摸一下看下数据路径有没有传过去,总感觉不到难点在哪里,不就是一个传输协议吗? 这个是soc设计方法与实现中提供的附录,可供参考,但是有版本错误(AXI4不支持写的交织,没有WID) https://www.hxedu.com.cn/hxe ......
算法 页面 PATH AXI

常见排序算法(汇总)

> 博客地址:https://www.cnblogs.com/zylyehuo/ * ![](https://img2023.cnblogs.com/blog/3071480/202308/3071480-20230812165953723-749510577.png) ......
算法 常见

2023-08-12:用go语言写算法。实验室需要配制一种溶液,现在研究员面前有n种该物质的溶液, 每一种有无限多瓶,第i种的溶液体积为v[i],里面含有w[i]单位的该物质, 研究员每次可以选择一瓶

2023-08-12:用go语言写算法。实验室需要配制一种溶液,现在研究员面前有n种该物质的溶液, 每一种有无限多瓶,第i种的溶液体积为v[i],里面含有w[i]单位的该物质, 研究员每次可以选择一瓶溶液, 将其倒入另外一瓶(假设瓶子的容量无限),即可以看作将两个瓶子内的溶液合并, 此时合并的溶液体 ......
溶液 研究员 物质 算法 体积

常用的排序算法

# 总结 ![image](https://img2023.cnblogs.com/blog/1348014/202308/1348014-20230812144206246-504582825.png) # 基于比较的排序(从小到大排序) ### 冒泡排序 GO实现 ``` func MySort ......
算法 常用

【图论】最近公共祖先(LCA)

## 什么是LCA 最近公共祖先是相对于两个节点来说的,顾名思义,最近公共祖先即为两个节点公共的最近的祖先。 ![image](https://img2023.cnblogs.com/blog/3257810/202308/3257810-20230812133415742-926455766.pn ......
祖先 LCA