几种经典算法

article/2025/11/10 2:54:33

1.分治法

分治法也叫做分而治之法。核心思想是将一个难以直接解决的大问题依照相同的概念分割成两个或者多个相同的小问题,以便各个击破。

如图所示:

image-20230530161427364

2.递归法

递归法和分而治之法像一对孪生兄弟,都是将一个复杂的算法问题进行分解,使其规模变小,然后使子问题容易求解。

一个函数或子程序是由自身所定义或调用的,就称为递归。它有两种定义,包括一个可以反复执行的递归过程和一个跳出只从过程的出口。

注:尾递归是指函数或子程序的最后一句为递归调用,,因为每次调用后再回到前一次掉哦哦用的第一条语句,所以不需要再 进行任何运算。

再系统种具体实现递归时要用到堆栈的数据结构。所谓堆栈,就是一组相同数据类型的集合,所有的操作均在结构的顶端进行,具有“后进先出”的特征。

3.贪心法

贪心法又称为贪婪算法,从某一七点开始,在每一个解决问题的步骤中使用贪心算法,即采用再当前状态下最有利或者最优化的选择,持续在每一个步骤中选择最佳方法,并且逐步逼近给定的目标,当达到某一个步骤不能再继续前进时,算法停止。

哈夫曼编码经常应用于数据的压缩,是可以根据数据的出现频率来构建二叉树。数据的存储时数据处理的两个重要领域,两者都和数据量的大小息息相关,哈夫曼树正好可以解决数据大小的问题。

4.动态规划法

类似于分治法。

如果一个问题的答案与子问题相关,就能将大问题拆解成小问题没其中与分治法最大的不同就是可以将每一个子问题的答案都存储起来,这样的做法不但可以减少再次计算的时间,而且可以将这些解组合成大的问题的解,故而可以解决再次计算的问题。

在这里插入图片描述

5.迭代算法

我无法使用公式一次求解,而需要使用重复结构重复执行一段程序代码来求得答案。

6.枚举法

枚举法是一种常见的数学方法,核心思想是列举所有的可能。

根据问题要求逐一列举问题的答案,或者为了便于解决问题把问题分为不重复、不遗漏的有限种可能情况,并 加以解决,最终达到解决问题的目的。

7.回溯法

回溯法也是枚举法的一种。对于某些问题而言,回溯法是一种可以找出所有解的一般性算法,同时避免美剧不正确的数值。一旦发现不正确的数值,回溯法就不再低轨道下一层,而是回溯到刷上一层你,以节省时间,是一种走不通就退回再走的方式。它的特点主要时搜索过程种寻找问题的解,当发现不满足求解条件时就回溯,尝试别的路径,避免无效搜索。

今天就到这里了,今天主要记录了几种常用算法,并且有大致的解释,接下来将会一一解释各个算法的作用及用法。


http://chatgpt.dhexx.cn/article/ViY0KvGe.shtml

相关文章

五大常用经典算法—分治算法

原文作者:bigsai 原文地址:五大常用算法:一文搞懂分治算法 目录 前言 分治算法介绍 分治算法经典问题 二分搜索 快速排序 归并排序(逆序数) 最大子序列和 最近点对 结语 前言 分治算法(divide and conquer)是…

十大经典算法

十大经典排序算法(动图演示) 0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比…

OpenX系列标准:OpenDRIVE标准简述

1.概述 ​ 作为一个完整的仿真测试场景描述方案,OpenX系列标准包括:OpenDRIVE、OpenSCENARIO和OpenCRG。 标准文件格式文件内容OpenDRIVE.xodr静态部分(如道路拓扑结构、交通标志标线等)OpenDRIVE.tdo保存ROD项目时生成的文件&a…

OpenDRIVE坐标系解读

几种坐标系简述 opendrive标准主要包括三种坐标系:inertial(x, y, z)、reference line(s, t, h)、local(u, v, z) 下面这张图片笔者认为还是比较清晰的展示了三种坐标系的关系的: 惯性坐标系(Inertial) 惯性坐标系最简单&am…

《OpenDRIVE1.6规格文档》6

目录 12 标志12.1 针对标志的车道有效性12.2 标志依赖12.3 标志与物体之间的链接12.4 标志放置12.5 标志信息的复用12.6 控制器 13 铁路13.1 铁轨13.2 转辙器13.2.1 主轨道13.2.2 次轨道13.2.3 搭档转辙器 13.3 车站13.3.1 站台13.3.2 段 14 插图目录15 表格目录 12 标志 如图…

《OpenDRIVE1.6规格文档》4

目录 9.5.7 车道高度9.5.8 从道路超高程中排除车道 9.6 道路标识9.6.1 路标类型和线条9.6.2 显性路标类型和线条9.6.3 路标偏移 9.7 特定车道规则 10 交叉口10.1 来路10.2 联接道路10.2.1 交叉口中联接道路的优先级10.2.2 联接道路的方向 10.3 交叉口内的道路表面10.4 虚拟交叉…

opendrive地理坐标

通过使用基于PROJ(一种用于两个坐标系之间数据交换的格式)的投影字符串来完成对大地基准的描述。该数据应标为CDATA,因为其可能包含会干预元素属性XML语义的字符。 具体参数参考官方文档:Quick start — PROJ 9.2.0 documentatio…

OpenDRIVE地图图形化

OpenDRIVE地图图形化 前言一、 p l a n V i e w planView planView参数三次曲线弧线螺旋线 二、 e l e v a t i o n P r o f i l e elevationProfile elevationProfile三、 l a t e r a l P r o f i l e lateralProfile lateralProfile总结 前言 关于 O p e n D R I V E OpenD…

opendrive中的几何形状

道路的走向可以是多种多样的,可以是空旷地面上的直线、高速公路上细长的弯道、亦或山区狭窄的转弯。为从数学角度对所有这些道路线进行正确建模,OpenDRIVE提供了多种几何形状元素。 图19展示了五种定义道路参考线几何形状的可行方式: 直线螺…

opendrive中的Road

路网在OpenDRIVE中用 <road> 元素来表示。每条道路都沿一条道路参考线延伸。一条道路必须拥有至少一条宽度大于0的车道。 OpenDrive中的道路可以与真实路网中或为应用而设的路网中的道路相提并论。每条道路由一个或多个 <road> 元素描述。一个 <road> 元素可…

opendrive文件结构

1、 文件结构 OpenDRIVE数据存储于XML文件中&#xff0c;文件拓展名为.xodr。OpenDRIVE压缩文件的拓展名为".xodrz"&#xff08;压缩格式gzip&#xff09;。 OpenDRIVE文件的结构符合XML规则&#xff1b;关联的模式文件在XML中得到引用。用于OpenDRIVE格式的模式文…

opendrive中的Lanes

在OpenDRIVE中&#xff0c;所有道路都包含了车道。每条道路必须拥有至少一条宽度大于0的车道&#xff0c;并且每条道路的车道数量不受限制。 需要使用中心车道对OpenDRIVE中的车道进行定义和描述。中心车道没有宽度&#xff0c;并被用作车道编号的参考&#xff0c;自身的车道编…

opendrive坐标系

1 opendrive坐标系概况 OpenDRIVE使用三种类型的坐标系&#xff0c;如下图所示&#xff1a; 惯性x/y/z轴坐标系参考线s/t/h轴坐标系局部u/v/z轴坐标系 若无另外说明&#xff0c;对局部坐标系的查找与定位将相对于参考线坐标系来进行。对参考线坐标系位置与方向的设定则相对于…

OpenDrive里XY和ST

1.坐标系 根据维基百科&#xff0c;坐标系是指&#xff1a;定义一个n维系统&#xff0c;能够使每一个点和一组n个标量组成一一对应的系统。[1] 在坐标系里&#xff0c;有几个关键概念。 第一个关键概念是维度&#xff08;Dimension&#xff09;。维度是指通过一定标准&#xff…

[OpenDrive] OpenDrive学习笔记

文章目录 OpenDRIVEreference linelaneslane offsetlane sectionslane propertiessuperelevation and crossfalllateral profileroad linkagejunctionsneighbors 总体结构Apollo OpenDRIVEApollo OpenDRIVE结构 OpenDRIVE OpenDRIVE是对路网结构的描述性文件&#xff0c;于200…

opendrive简介

1、概要 ASAM OpenDRIVE描述了自动驾驶仿真应用所需的静态道路交通网络&#xff0c;并提供了标准交换格式说明文档。该标准的主要任务是对道路及道路上的物体进行描述。OpenDRIVE说明文档涵盖对如道路、车道、交叉路口等内容进行建模的描述&#xff0c;但其中并不包含动态内容…

如何使用OpenDRIVE

文章目录 OpenDRIVE Notes#1 前言#2 OpenDRIVE结构#2.1 Road#2.1.1 道路属性#2.1.2 道路联接#2.1.3 参考线 #2.2 laneSection#2.3 laneOffset#2.4 junction#2.4.1 路口的联接 #2.5 poly3(三次多项式) #3 解析#3.1 数据结构#3.1.1 ID#3.1.2 Point #4 构建topo#5 邻接点#6 路径规…

《OpenDRIVE1.6规格文档》1

目录 1 前言1.1 说明文档的可交付内容 2 介绍2.1 概要2.2 规范和非规范的声明与可交付内容2.3 惯例2.3.1 命名惯例2.3.2 单位2.3.3 情态动词2.3.4 拼写惯例2.3.5 ID的使用2.3.6 曲率 3 与其它标准的关联(初步)3.1 ASAM OpenDRIVE在ASAM标准系列中的角色3.2 OpenDRIVE与OpenCRG以…

万字详解OpenDRIVE文件

opendrive简介_whuzhang16的博客-CSDN博客_opendrive一文读懂opendrive的xodr文件内容_布拉德先生的博客-CSDN博客_xodr格式自动驾驶场景仿真标准&#xff08;一&#xff09;- OpenDRIVE - 知乎 (zhihu.com)opendrive坐标系_whuzhang16的博客-CSDN博客_opendrive坐标系 1 Open…

OpenX系列标准介绍(1):OpenDRIVE介绍

|作者版权所有&#xff0c;未经许可谢绝转载&#xff0c;转载请联系adsimtest163.com。 “ 本系列尝试对ASAM OpenX系列标准进行介绍。这是第一篇&#xff1a;介绍OpenDRIVE地图数据格式所能描述的内容和思路。” 01 概述 作为一个完整的仿真测试场景描述方案&#xff0c;Op…