随笔分类 - 算法设计与分析
摘要:1.设计动态规划算法的主要步骤是怎么的?请简述 (1)找出最优解的性质,并刻画结构特征 (2)递归的定义最优值 (3)自底向上或自顶向下的记忆方式算出最优值 (4)根据最优值得到的信息,构造问题的最优解 2.分治法所能解决的问题一般具有哪几个特征?请简述 (1)该问题的规模缩小到一定程度就可以很容易
阅读全文
摘要:1.试用动态规划算法实现下列问题:设A和B是两个字符串。我们要用最少的字符操作,将字符串A转换为字符串B,这里所说的字符操作包括: (1)删除一个字符。 (2)插入一个字符。 (3)将一个字符改为另一个字符。 请写出该算法: 1 #include <string.h> 2 #include <ios
阅读全文
摘要:试用贪心算法求解汽车加油问题: 已知一辆汽车加满油后可行驶n公里,而旅途中有若干个加油站。试设计一个有效算法,指出应在哪些加油站停靠加油,使加油次数最少,请写出该算法: 1 int greedy(vector<int>x,int n)//定义一个int类型的向量x 2 { 3 int sum=0,k
阅读全文
摘要:1.简述数据结构与算法的关系答: 数据结构是算法的基础,算法的操作对象是数据结构,在设计算法时,需要构造适合该算法的数据结构。 数据结构关注的是数据的逻辑结构、存储结构以及基本操作。 而算法关注的是如何在数据结构的基础上解决实际问题。2.什么是算法?算法的特征有哪些?答:算法是求解问题的一系列计算步
阅读全文