一府博客 | OneForward Blog

一府博客

算法设计与分析

【算法设计与分析】 四、动态规划(一)

【算法设计与分析】 四、动态规划(一)

第三章 动态规划 基本思想:将待求解问题分解为若干子问题。子问题通常不独立,如果使用分治,子问题数目过多 动态规划算法适用于解最优化问题。 (1)找出最优解的性质,并刻画其结构特征。 (2)递归地定义最优值。 (3)以自底向上的方式计算出最优值。 (4)根据计算最优值时得到的信息,构造最优解 动态规
33
0
0
2024-02-10
【算法设计与分析】 三、递归与分治策略(二)

【算法设计与分析】 三、递归与分治策略(二)

第二章 递归与分治策略(二) 2.4 大整数的乘法 设X和Y都是n 位的二进制整数,计算它们的乘积 XY。 方法一:直接计算,但是这样做计算步骤太多,效率较低。如果将每两个1位数的乘法或加法看作一步运算,那么这种方法要进行O(n²)步运算才能算出乘积XY。 方法二:分治法。 将 n 位二进制整数X
22
0
0
2024-02-08
【算法设计与分析】 二、递归与分治策略(一)

【算法设计与分析】 二、递归与分治策略(一)

第二章 递归与分治策略(一) 2.1 递归 直接或间接地调用自身的算法称为递归算法。 用函数自身给出定义的函数称为递归函数。 2.1.1 阶乘函数 n(n-1)!调用自身,将主问题拆分成若干层的子问题。 #include<bits/stdc++.h> using namespace std; int
113
0
0
2024-02-06
【算法设计与分析】一、算法引论

【算法设计与分析】一、算法引论

第一章 算法引论 1.1 算法概述 1.什么是算法?     算法(algorithm):算法是对特定问题求解步骤的描述,是指令的有限序列。就是定义良好的计算过程,他取一个或一组的值为输入,并产生出一个或一组值作为输出。简单来说算法就是一系列的计算步骤,用来将输入数据转化成输出结果。 2.算法的五个
30
0
0
2024-02-05