
算法导论
文章平均质量分 73
谭墨墨快乐
这个作者很懒,什么都没留下…
展开
-
最少硬币问题(动态规划解决)
设有n中不同面值的硬币,各硬币的面值存在于数组T[1..n]中,可以使用的面值硬币个数不限。假如现在找的钱是j,1解决方法:另c[i,j]代表用前中硬币兑换j所用的最少数目。#include "stdafx.h"#include#include#include#define maxvalue 65535using namespace std;void making_原创 2012-04-24 21:30:02 · 3659 阅读 · 0 评论 -
多重幂计数问题
问题:给定n个变量x1,x2,x3…xn。将这些变量依次作为底和幂,可得n重幂如下xn …x3x2x1上述的n重幂是不确定的,当其中加入适当的括号之后,才能成为一个确定的n重幂。不同的加括号方式导致不同的n重幂。例如,当n=4时,全部的4重幂有5个。问对n个变量计算出有多少个不同的n重幂。分析:本题跟矩阵链乘法是相同的题目。假设s[i]表示长度为原创 2012-04-30 21:08:53 · 1775 阅读 · 0 评论 -
序关系计数问题
问题描述:用关系“A=B=C,A=BB=C将n 个数(1 问题分析:代码: // 序关系计数问题.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#include#define MAX 50using namespace std;int comb(int i,int k){原创 2012-04-30 22:00:44 · 1150 阅读 · 0 评论 -
装配线调度问题(算法导论+动态规划)
某汽车工厂有2个装配线,每个装配线有n 个装配站(按顺序编号1~n ),两个装配线对应的装配站执行相同的功能,但所用的时间可能不同。经过第i条流水线(i=1,2)的第j 个装配站所花的时间为Aij。从第i条流水线的第j 个装配站移到第j+1个装配站的时间可以忽略,而移到另外一个流水线的下一个装配站则需要一定的时间Tij。汽车进入流水线不需要花时间,出流水线时需要花时间Tin。汽车的装配需要原创 2012-04-21 21:04:08 · 1210 阅读 · 0 评论 -
凸包算法(Graham算法)实现,带图形
// 凸包.cpp : 定义应用程序的入口点。//#include "stdafx.h"#include "凸包.h"using namespace std;#define MAX_LOADSTRING 100#define MAXPOINTS 13// 全局变量:HINSTANCE hInst; // 当前实例TCHAR szTitl原创 2012-05-19 19:39:46 · 908 阅读 · 0 评论 -
猜结果游戏
一、引言 穷举是解决问题的一种常用思路,当对一个问题无从下手的时候,可以考虑在问题域允许的范围内将所有可能的结果穷举出来,然后根据正确结果的判断规则对这些结果逐个验证,从而找出正确的结果。采用穷举的方法求解问题的答案比较适合计算机做,对这种体力活它们没有怨言,本文就以常见的两个猜结果的题目为例,介绍一下如何通过计算机程序解决此类问题,顺便介绍一下穷举法常见的算法结构和实现方转载 2012-06-12 20:21:41 · 1379 阅读 · 0 评论