
数据结构和算法设计实验课
文章平均质量分 79
dxy612
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
有向图 两点间的最短距离
1、[问题描述]已知有向图有12个顶点,21条边,起点为S,终点为E,求从S到E的最小成本花费W。(如图)[输入要求]有多组测试数据,第一行输入S(1[输出要求]每组测试数据对应一个输出,输出S到终点E最小成本花费W[样例输入]12[样例输出]1610#include using namespace std; int arr[12+1][12+1]; int count =0; int total[100]; void init() { memset(arr,0,sizeof(ar原创 2010-06-26 18:33:00 · 3052 阅读 · 1 评论 -
旅费问题
2、[问题描述] 某售货员要到N个城市去推销商品,已知各城市之间的路程(或旅费)。他从S出发,经过每个城市一次,最后回到S,城市之间的路径是双向的,使总的路程最小。(为简化问题,假设题中S=1出发)[输入要求] 有多组测试数据,第一行输入N,(0[输出要求] 每组测试数据对应一个输出,输出最小路程。[样例输入]4 121 2 101 3 151 4 20 2 1 52 3 92 4 103 1 63 2 13 3 4 124原创 2010-06-26 18:37:00 · 639 阅读 · 0 评论 -
最小生成树
<br />【问题描述】<br />现有一设计师要在n(0<n<=1000)个城市之间建立通信网络,每两个城市之间建设通信线路的费用和城市的数目是已知的,现在他要你帮他找到建设通信网络要花费的最小费用。(注:通信网络必须连接到所有的城市)<br />【输入要求】<br />输入包含多组测试数据,每组测试数据的第一行是城市的个数n,接下来的每一行包括三个数据分别是两个城市的编号和它们之间的距离,每组数据测试以三个0结束。<br />【输出要求】<br />对于每组输入数据,输出建设通信网络的最小花费,每个测试原创 2010-06-26 21:14:00 · 497 阅读 · 0 评论 -
01 背包问题
动态规划是用空间换时间的一种方法的抽象。其关键是发现子问题和记录其结果。然后利用这些结果减轻运算量。比如01背包问题。/* 一个旅行者有一个最多能用M公斤的背包,现在有N件物品,它们的重量分别是W1,W2,...,Wn,它们的价值分别为P1,P2,...,Pn.若每种物品只有一件求旅行者能获得最大总价值。输入格式:M,NW1,P1W2,P2......输出格式: X */因为背包最大容量M未知。所以,我们的程序要从1到M一个一个的试。比如,开始任选N件物品的一个。看对应M的背包,能不能放进去,如果能放进去,原创 2010-06-05 17:20:00 · 473 阅读 · 0 评论 -
完全背包问题
贪心背包问题一、问题描述 已知一个容量为M的包和n件物品, 每件物品的重量为wi, 效益值为pi. 若将物品i的一部分0≤xi≤1装入包中, 背包可得到pixi的效益值增量. 要求找到一种装入物品的方案, 在不超过包的总容量前提下, 使包获得最大效益值, 即求使目标函数 最大化, 且满足约束条件 的向量x, 0≤xi≤1, pi>0, wi>0, 0≤i≤n. 例 已知n=3, M=20, p=(25, 24, 15), w=(18, 15, 10), 其中的四个原创 2010-06-05 17:43:00 · 826 阅读 · 0 评论 -
哈夫曼编码和译码(老师给的样题样解)
标题: 作业六----哈夫曼编码和译码 内容: [问题描述]有两个城市要进行通讯,已知他们通讯内容为字符集C且字符集中的每一个字符c的频率是f(c).现在要你给通讯内容编码使通讯信息量最少,并输出字符集C中每个字符的编码长度。[输入要求]有多组测试数据,每组数据的第一行是字符集C中的字符个数n(0n=1000),接下来的n行每行含有字符c和字符的频率f(c)(0f(c)=1000)。 [输出要求]对每组数据,按输入给定的字符集的顺序每行输出一个字符c和它的编码长度,中间用一个空格隔开。 [样例输入]4A 1原创 2010-06-05 22:21:00 · 1442 阅读 · 0 评论 -
皇后问题解一
[问题描述]求出在nXn的棋盘上,放置n(1[输入要求]有多组测试数据,第一行输入n皇后,每一个输入占一行。[输出要求]每组测试数据对应一个输出,如果存在n个皇后不能相互攻击的布局,则输出的所有可能的布局数,否则输出0。[输入]582[输出]10920/* i(x)为行的表示,r(y)为列的标示即第几个皇后。 某一个位置的右分支存在一函数 y-x(r-i)=常数(|d1|=0) */ #include using namespace std; const int Max转载 2010-06-20 16:50:00 · 782 阅读 · 1 评论 -
会场安排
内容:[问题描述] 假设要在足够多的会场里安排一批活动,并希望使用尽可能少的会场,请写一个程序计算出最小的会场个数。[输入要求] 有多组测试数据,第一行有1 个正整数,表示有k 个待安排的活动。接下来的k 行中,每行有2 个正整数,分别表示k 个待安排的活动开始时间和结束时间。时间以0 点开始的分钟计,所有正整数都在100000以内。[输出要求] 每组测试数据对应一个输出,计算出最小的会场个数。[样例输入]5原创 2010-06-22 21:33:00 · 592 阅读 · 0 评论