该文被密码保护。 阅读全文
posted @ 2018-12-23 19:22 我要吃鸡腿 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 1.你对回溯算法的理解 回溯算法是一个既带有系统性又带有跳跃性的搜索算法,是利用深度优先的原则对树型解空间进行探索的算法设计策略。当用于求问题的所有解时,需要回溯到根,且根结点的的所有子树都已被搜索遍才结束。当用于求问题的一个解时,只要搜索到问题的一个解就可结束。回溯法适用的问题有两种,一是子集树问 阅读全文
posted @ 2018-12-23 19:04 我要吃鸡腿 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 实践题目:程序存储问题 问题描述:设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是 li,1≤i≤n。 程序存储问题要求确定这n 个程序在磁带上的一个存储方案, 使得能够在磁带上存储尽可能多的程序。 对于给定的n个程序存放在磁带上的长度,计算磁带上最多可以存储 阅读全文
posted @ 2018-12-02 19:24 我要吃鸡腿 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 实践题目: 7-1 数字三角形 给定一个由 n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。 QQ截图20170929023616.jpg 输入格式: 输入有n+1行: 第 1 行是数字三角形的行 阅读全文
posted @ 2018-11-18 15:52 我要吃鸡腿 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 一 动态规划的基本思想是将待求解问题分解成若干子问题(往往互不独立),最优子结构及子问题重叠性质是其基本要素。动态规划与分治法类似,但动态规划法避免耗费指数时间。 二 编程题(1)递归方程如下: 其中b[]存放的是单调递增子序列的长度。 解题的思路是,既然要得到最小的花费,那么就从最底层开始,逐层向 阅读全文
posted @ 2018-11-04 23:29 我要吃鸡腿 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 二分法是运用分治策略的典型例子。它充分利用了元素间的次序关系。它的最坏情况是刚好元素按相反的顺序排列了,此时用O(logn)时间完成搜索任务。二分搜索法的基本思想是将n个元素分成个数大致相同的两半,取a[n/2]与x做比较,是就返回a[n/2]下标,否则,判断a[n/2]和x相比谁更大,若a[n/2 阅读全文
posted @ 2018-10-21 22:02 我要吃鸡腿 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 题目:二分查找 输入n值(1<=n<=1000)、n个非降序排列的整数以及要查找的数x,使用二分查找算法查找x,输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。 大概思路:我们就书中十八页二分搜索技术给出的的代码进行改写,用了函数调用的方法。主函数构建了一个数组,存储输入的 阅读全文
posted @ 2018-10-21 22:01 我要吃鸡腿 阅读(145) 评论(0) 推荐(0) 编辑