搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
木道寻08
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
【百度智能体】零代码创建你的 AI 宠物助手_百度智能体低代码
2
Android逆向前期准备_pycharm frida
3
推荐项目:ESXi Stats —— 您的Home Assistant的虚拟化监控神器
4
代码书写规范_代码格式规范
5
XCZU19EG板卡设计资料:610-基于6U VPX 的FPGA XCZU19EG存储阵列
6
Python Asyncio并发编程:提高效率的另一种实现方式
7
cms 及其漏洞_cms漏洞
8
你知道几种四舍五入的方法?_四舍五入有几种
9
pnpm-workspace.yaml 有什么作用
10
【RabbitMQ】架构及控制台简单使用_rabbitmq控制台怎么
当前位置:
article
> 正文
算法分析与设计复习笔记_算法设计与复习笔记
作者:木道寻08 | 2024-08-04 13:58:45
赞
踩
算法设计与复习笔记
算法分析与设计复习笔记
第一章 算法概述
第二章 递归与分治策略
第三章 动态规划
第四章 贪心算法
第五章 回溯法
第六章 分支限界法
第七章 随机化算法
第一章 算法概述
算法的性质:输入、输出、确定性、有限性
算法的复杂性分析:
算法的渐进复杂性: T(N) - T’(N) / T(N) -> 0,就说T’(N)是T(N)当N->无穷的渐进性态。
f(N) = O(g(N)) : 当N >= N0时有f(N) <= Cg(N), 称函数f(N)当N充分大时有上界,g(N)是它的一个上界。 (大O相当于<=)
f(N) = Ω(g(N)): 当N >= N0时有f(N) >= Cg(N),称函数f(N)当N充分大时有下界,g(N)是它的一个下界。 (大Ω相当于>=)
f(N) = θ(g(N)): (相当于=)
第二章 递归与分治策略
分治法的设计思想:将一个难以直接解决的大问题分割成一些规模较小的相同问题,以便各个击破,分而治之。
排序问题的计算时间下界为Ω(nlogn)
典型例题:
整数划分问题
Hanoi塔问题
二分搜索
大整数乘法
Strassen矩阵乘法
合并排序
快速排序
线性时间选择
循环赛日程表*
第三章 动态规划
动态规划的基本思想:将待求解的问题分解成若干子问题,先求解子问题,在结合子问题的解得到原问题的解,用一个表记录所有已解决的子问题的答案。
动态规划算法的基本要素
最优子结构性质:问题的最优解包含其子问题的最优解
重叠子问题性质
动态规划算法适用于解最优化问题,设计步骤为:
找出最优解的性质,刻画其结构特征
递归的定义最优值
自底向上的计算最优值
根据计算的最优值时得到的信息构造最优解
动态规划算法的变形:备忘录方法
用表格保存已解决的子问题的答案,与DP不同的是,备忘录方法是自顶向下递归的
备忘录方法为每个子问题建立一个记录项,初始化时存入一个特殊值,表示尚未求解。求解过程中,对于每个子问题首先查看其相应的记录项,若未求解,则计算问题的解并保存在记录项中。
经典例题:
矩阵连乘问题:
m[i, j] = 0 ; i =j
m[i, j] = min{m[i, k] + m[k + 1, j] + Pi-1PkPj} ; i < j
最长公共子序列:
c[i, j] = 0 ; i > 0, j = 0
c[i, j] = c[i - 1, j - 1] + 1 ; i,j > 0; xi == yi
c[i, j] = max{c[i, j - 1], c[i - 1, j]} ; i,j > 0; xi != yi
最大子段和:
b[j] = max{b[j - 1] + a[j], a[j]}; 1 <= j <= n
凸多边形的最优三角剖分:
t[i, j] = 0 ; i = j
t[i, j] = min {t[i, k] + t[k + 1, j] + w(Vi-1 Vk Vj)} ; i < j
0-1背包问题:
m[i, j] = max{m[i + 1, j], m[i + 1, j - Wi] + Vi} ; j >= Wi
m[i, j]= m[i + 1, j]
m[n, j] = Vn; j >= Wn
m[n, j] = 0 ; 0 <= j < Wn
最优二叉搜索树:
m[i, j] = Wi,j + min {m[i, k - 1] + m[k + 1, j]} ; i <= j
m[i, i - 1] = 0 ; 1 <= i <= n
第四章
贪心算法
贪心算法的基本思想:总是做出在当前看来最好的选择
贪心算法的基本要素:
最优子结构性质
贪心选择性质:所有问题的整体最优解可以通过一系列局部最优的选择来达到。
典型例题:
活动安排问题:按结束时间递增排列
背包问题:(背包问题可以贪心求解,而0-1背包问题不可贪心求解)
最优装载问题
哈夫曼编码
单源最短路径:计算从源到其他各顶点的最短路径长度
Dijkstra算法
最小生成树:
Prim算法:每次选择连通的最短的边
Kruskal算法:每次选择最短的边,可以不连通
多机调度问题:最长处理时间作业优先的贪心选择策略
第五章
回溯法
回溯法的基本思想:从开始结点出发,以深度优先方式搜索整个解空间。
使用两种策略避免无效搜索(剪枝函数):
用
约束函数
在扩展节点处减去不满足约束的子树
用
限界函数
减去得不到最优解的子树
常见的解空间树:子集树(2^n个节点)和排列树(n!个节点)
典型例题:
装载问题
n后问题:
用完全二叉树表示解空间,可行性约束Place减去不满足行、列和斜线约束的子树
0-1背包问题
图的m着色问题
旅行售货员问题
第六章
分支限界法
分支限界法的基本思想:以广度优先或最小耗费优先的方式搜索解空间,在每个活结点处计算一个函数值限界,根据函数值选择一个最有利的节点作为扩展节点。
分类:
队列式分支限界法:选择最大优先队列或最小优先队列存储活结点
优先队列式分支限界法:使用最小堆存储活结点
典型例题:
单源最短路径问题
装载问题
0-1背包问题
旅行售货员问题
第七章 随机化算法
数值随机化算法常用语数值问题的求解,得到的往往是近似解。
蒙特卡洛算法用于求问题的准确解,能求得一个解,但未必是正确的。
拉斯维加斯算法不会得不到不正确的截断,一旦找到解就一定是正确的,但有时找不到解。
舍伍德算法总能求得问题的一个解, 且求得的解总是正确的。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/木道寻08/article/detail/928122
推荐阅读
article
二百五十
四、
OceanBase
——
Linux
上安装
OceanBase
数据库
(四):登录
ocp
-exp...
OceanBase
——
Linux
上安装
OceanBase
数据库
(四):登录
ocp
-
express
,配置
租户
管理等信息二百...
赞
踩
article
STM32
+
AD7124
+
热电
偶
方案+
Pt100
冷端
补偿解析工程源码,源码包含
Pt100
、NTC热敏...
同时,通过
STM32
和
AD7124
的应用,我们可以实现对温度传感器信号的精确采集和处理。
STM32
作为嵌入式系统开发的主...
赞
踩
article
【
LeetCode
】
二叉树
OJ...
本期讲解了一些
二叉树
的OJ题【
LeetCode
】
二叉树
OJ 目录 一、根据
二叉树
创建字符...
赞
踩
article
sqlserver
browser
无法启动_打开
DBaaS
性能大门,
SQL
Server
的秘诀是什么...
在云计算理念的推动下,数据库作为应用的基础承载环境,其传统使用模式愈发凸显出局限性,用户希望获得更加敏捷、功能更加丰富的...
赞
踩
article
【网络安全】|
vmware
网络适配器
模式
-
NAT
模式
、
桥接
模式
、
仅
主机
模式
...
1
、
桥接
模式
(Bridged Network),在桥接
模式
下,虚拟机会通过宿
主机
的物理
网络适配器
直接访问网络,像是局域网...
赞
踩
article
nlp
与
计算机
视觉
_
ai
ml
nlp
深度
学习
计算机
视觉
入门指南...
nlp
与
计算机
视觉
什么是人工智能? (What is Artificial Intelligence?)Artifi...
赞
踩
article
RabbitMQ
安装
后遇到
启动
失败
问题
总结-
win10
_
rabbitmq
安装
后
服务
无法
启动
...
本文讲述了在Windows环境下
安装
RabbitMQ
时遇到的常见
问题
,包括版本选择、Log路径设置、
服务
启动
失败和sch...
赞
踩
article
牛客
小月赛
41
(
A
~F)题解
_
牛客
月赛
41
python
...
今天是lzgg出的题呀,是小红专场;题目不是很难,但是比赛时候网站老是崩,体验就不太舒服;
A
、小红的签到题题目:传送门题...
赞
踩
article
影子
系统
重启
蓝屏
开机
蓝屏
安全
模式
蓝屏
进PE
蓝屏
解决方案
_
影子
系统
经常
蓝屏
...
本人Win10
系统
装了
影子
系统
在保护
模式
下重启后 无限
开机
蓝屏
安全
模式
蓝屏
进PE
蓝屏
1. 首先进入命令行
模式
(...
赞
踩
article
经典DP——
数字
三角
形
_
第
一
行
一个整数
n
(<=
1
000)
,
表示
三角
形
总共有几
行
第
二至
第
n
+
1
行
,
给...
经典DP——
数字
三角
形
【输入】
第
一
行
一个整数N(<=
1
000),
表示
三角
形
总共有几
行
第
二至
第
N+
1
行
,给出这个
数字
...
赞
踩
article
Python
-
Faker
-制造
测试数据
实例及常用方法总结
_
fake
.
pyfloat
...
一、通过
Faker
制造
测试数据
实例import pymysqlfrom
fake
r import
Faker
conn =...
赞
踩
article
Unity3D
界面
嵌入
WPF
界面
中(鼠标键盘均可正常响应)_
wpf
潜入
u3d
...
Unity3D
界面
嵌入
WPF
界面
中(鼠标键盘均可正常响应)1、引用System.Windows.Forms.dll和Wi...
赞
踩
article
数据库
安全
:
MySQL
安全
配置,
MySQL
安全
基线检查加固_
mysql
数据库
安全
检查...
MySQL
基线检查,基线配置,
安全
加固_
mysql
数据库
安全
检查
mysql
数据库
安全
检查 ...
赞
踩
article
力扣
-
SQL
【入门】
_
力扣
sql
题库
在
哪做...
题解
_
力扣
sql
题库
在
哪做
力扣
sql
题库
在
哪做 htt...
赞
踩
article
Java
语言
程序设计
(
基础
篇)原书第
10
版 梁勇著 PDF 文字版电子书_
java
程序设计
电子教材...
Java
语言
程序设计
(
基础
篇)原书第
10
版 是
Java
语言
的经典教材,中文版分为
基础
篇和进阶篇,主要介绍程序设...
赞
踩
article
数据结构
——
图
知识
总结_
数据结构
图
知识
点
总结...
一、
图
的逻辑结构1、
图
的定义
图
是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为: G=(V,E)其中:G表示一个...
赞
踩
article
【
李宏毅
机器
学习
课程笔记】深度强化
学习
(二)——
PPO
(
Proximal
Policy
Optimi...
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插...
赞
踩
article
Docker
全
命令
详解
_
docker
命令
详解
大全...
一、容器rootfs
命令
1、commit #通过容器创建本地镜像语法:
docker
commit [OPTIONS]...
赞
踩
article
极限
中的
无穷
小
量
和
无穷
大
量
_
x
+3
分
之
x
-6什么时候是
无穷
小
量
...
在高等数学数学
分
析中,
无穷
小
量
是一个以数0为
极限
的变
量
,即当自变
量
x
无限接近于某个点(或绝对值无限增大)时,函数值f(
x
...
赞
踩
article
MvvM
中
ComboBox
绑定枚举值_
mvvmlight
枚举
combox
...
定义枚举值:public enum Subjects{ 语文, 数学, 英语, 体育}方式一:xaml文件:需要引入xm...
赞
踩
相关标签
oceanbase
express
网络
程序人生
leetcode
算法
职场和发展
sqlserver browser无法启动
sqlserver evaluation是什么版本
sqlserver 当前时间
sqlserver 无法绑定由多个部分组成的标识符
sqlserver代理服务无法启动
sqlserver检测到基于一致性的逻辑
web安全
计算机视觉
人工智能
机器学习
python
深度学习
rabbitmq
c++
深度优先
影子系统
蓝屏
开机