基础算法导论
文章平均质量分 76
梳理基础算法和主要算法原理,辅以简洁的代码示例讲解
Abona
这个作者很懒,什么都没留下…
展开
-
基础算法导论
算法本质上说就是解决问题的方法和步骤。冯诺依曼的计算机架构体系解决了通用的数值计算和逻辑判断的问题,实际上可以认为它就是一个算法系统的具体展示:冯诺依曼计算机架构体系的5个组成部分“输入设备、输出设备、控制器、运算器、存储器”对应算法的五个特性“输入、输出、有限性、可行性、确定性”(似乎传统“金木水火土”的五行理论也可拓展升级了,这是题外话了)。原创 2021-11-17 13:43:39 · 249 阅读 · 0 评论 -
1. 通用基础算法(1.1枚举算法/1.2递推算法/1.3递归算法)
这部分主要介绍一下8种主要的通用基础算法思想:枚举算法、递推算法、递归算法、分治算法、贪心算法、回溯算法、动态规划算法、模拟算法,附带也会拓展介绍一些其他通用基础算法思想:数值转换算法、高精度求解算法、排序算法、排列组会算法等。原创 2021-11-17 13:55:44 · 4224 阅读 · 0 评论 -
1. 通用基础算法(1.4分治算法/1.5贪心算法/1.6回溯算法)
4.分治算法分治算法的主要思想就是将原问题分解为多个相同结构的子问题,通过分别解决子问题的方式,最终解决原问题。分治算法主要解决可以进行线性模块划分的问题,主要步骤就是三个:分解原问题,解决子问题,合并子问题的解。下面以最大最小值问题和二分查找问题为例简单介绍。最大最小值问题:已知数列{a(n)},求解其最大值和最小值。以下是最大最小值问题的C语言程序。#include<stdio.h>#include<stdlib.h>#include<time.h&...原创 2021-12-21 17:44:28 · 202 阅读 · 0 评论 -
1. 通用基础算法(1.7动态规划算法/1.8模拟算法/1.9其他算法)
动态规划算法 动态规划(Dynamic Programming)是求多阶段决策过程(Multistep Decision Process)最优化的一种数学方法,它将问题的整体按时间或空间的特征分成若干个前后衔接的时空阶段,把多阶段决策问题表示为前后有关的一系列单阶段决策问题,然后逐个求解,从而求出整个问题的最有决策序列。它强调了时间和空间的连续性。动态规划算法的核心思想就是避免子问题的重复计算,通过用空间换取时间的方法来提高算法效率。动态规划算法与分治算法和贪心算法类似,都是将问题归纳为更...原创 2021-12-27 17:54:37 · 504 阅读 · 0 评论 -
计算机视觉算法
计算机视觉分为光度视觉、语义视觉和几何视觉,分别从传统的图像处理、立体视觉和三维重建、物体检测和识别发展而来,将来的发展趋势是深度学习方向。原创 2023-02-02 15:59:48 · 701 阅读 · 0 评论