方案 电动车 算法tsingsee

数据结构与算法 --- 排序算法(一)

## 引言 按照时间复杂度,将一些常见排序算法进行分类,分为以下三类: - $O(n^2)$:冒泡排序,插入排序,选择排序。 - $O(nlogn)$:快速排序,归并排序。 - $O(n)$:桶排序,计数排序,基数排序。 本篇文章讨论以下第一类:冒泡排序,插入排序,选择排序。 上一篇[数据结构与算法 ......
算法 数据结构 结构 数据

数据结构与算法 --- 排序算法(二)

title: 数据结构与算法 排序算法(二) category: 数据结构与算法 tags: 算法 updatedAt: 2023-05-18T15:29:17.847Z createdAt: 2023-05-13T14:43:31.656Z ## 引言 上一篇[数据结构与算法 排序算法(一)](h ......
算法 数据结构 结构 数据

数据结构与算法 --- “哨兵”思想

## 引言 哨兵思想是指在算法中使用一个特殊值来检测或标记某些条件的发生,它的目的是为了简化代码,并使其更容易理解,常常用于在循环中优化边界条件的判断。 ## 介绍 在算法中,"哨兵"思想是指在循环中设置一个特殊的元素(称为哨兵),以便在循环过程中能够更高效地处理某些边界情况或结束条件。 这种思想可 ......
哨兵 数据结构 算法 思想 结构

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

## 什么是递归? **递归(Recursion)** 是一种解决问题的方法,它将问题分解为更小的子问题,并逐层解决这些子问题。递归算法的核心思想是:**一个函数可以直接或间接地调用自身**。通过这种自我调用,我们可以用简洁的代码来解决复杂问题。 ## 满足递归的条件 一般来说,满足下面三个条件就可 ......
数据结构 算法 结构 数据

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

## 引言 上文[数据结构与算法 递归(一)](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语言中的排序算法及其实现方法 首 ......
算法 语言 方法

机器学习实战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

vite无法使用require的替代方案

vite无法使用require的替代方案 lowMan 2022-01-18 23:056631 webpack javascript 复制代码 const modulesFiles = require.context('./modules', true, /.js$/) vite arduino ......
require 方案 vite

分治算法——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

基于C#的无边框窗体阴影绘制方案 - 开源研究系列文章

今天介绍无边框窗体阴影绘制的内容。 上次有介绍使用双窗体的方法来显示阴影,这次介绍使用API函数来进行绘制。这里使用的是Windows API函数,操作系统的窗体也是用的这个来进行的绘制。 1、 项目目录; 下面是项目目录; 2、 函数介绍; 这里使用了几个API函数: 3、 运行截图; 4、 源码 ......
窗体 边框 阴影 方案 文章

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

算法刷题系列: - [算法刷题:链表题(持续更)](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

Cannot resolve symbol 解决方案汇总

在我复制一个mybatisplus代码生成器文件的时候,Cannot resolve symbol 'generator',提示找不到这个文件 ```java import com.baomidou.mybatisplus.generator.AutoGenerator; import com.ba ......
解决方案 resolve 方案 Cannot symbol

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

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

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 ......
积分 算法 博客

ICCV'23 | MetaBEV:传感器故障如何解决?港大&诺亚新方案!

前言 现代自动驾驶车辆的感知系统通常从互补的多模态传感器(如LiDAR和摄像机)获取输入。然而,在现实应用中,传感器损坏和故障会导致性能低下,从而影响自动驾驶的安全性。本文提出了一个鲁棒框架,称为MetaBEV,以解决极端的现实世界环境,包括整体六个传感器损坏和两个极端传感器失踪的情况。在MetaB ......
传感器 故障 MetaBEV 方案 ICCV

kestra apache airflow 可选方案

今天我有简单说明过一个mage-ai 的airflow 替换方案,kestra 是另外一个可选方案kestra 使用了yaml 进行piepline 的配置,当然我们也可以直接在ui 中操作,kestra包含了自己的插件系统 适合的业务场景 数据调度 分布式调度 事件驱动workflow 说明 ke ......
airflow 方案 kestra apache

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

###排序算法的时间复杂度和空间复杂度 最好时间复杂度最坏时间复杂度 平均时间复杂度 空间复杂度是否为稳定排序是否为原地排序 冒泡排序 $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 ......
指针 算法