一、实验题目设有n位选手参加网球循环赛,循环赛共进行n-1天,每位选手要与其他n-1位选手比赛一场,且每位选手每天必须比赛一场,不能轮空。试按此要求为比赛安排日程。二、实验目的1.深刻理解并掌握“分治算法”的设计思想;2.提高应用“分治算法”设计技能;3.理解这样一个观点:用递归方法编写的问题解决程...
分类:
编程语言 时间:
2015-01-08 22:42:23
阅读次数:
673
题意:给出n,求把n写成若干个连续素数之和的方案数。分析:这道题非常类似大白书P48的例21,上面详细讲了如何从一个O(n3)的算法优化到O(n2)再到O(nlogn),最后到O(n)的神一般的优化。首先筛出10000以内的素数,放到一个数组中,然后求出素数的前缀和B。这样第i个素数一直累加到第j个...
分类:
编程语言 时间:
2015-01-06 00:47:52
阅读次数:
187
/**
* 书本:《算法分析与设计》
* 功能:实现用Prim算法实现寻找最小生成树
* 文件:PrimMixTree.cpp
* 时间:2015年1月4日19:42:57
* 作者:cutter_point
*/
#include
#include //文件输入输出流
using namespace std;
const int N = 6; //这个图是一个6*6的矩阵
cons...
分类:
编程语言 时间:
2015-01-04 21:21:51
阅读次数:
257
输入一个有序的数组,如何实现将这个有序整数数组放到二叉树中?
分析:对于二叉树,可以将这个有序数组插入到二叉搜索树中,毕竟二叉搜索树还是有很多特定的。那么对于创建二叉搜索树来说,就是简单的递归了。关于树的算法设计一定要联想到递归,因为树本身就是递归的函数。
那么可以对于这个有序数组分析,将这个数组的中位数作为根节点,然后对于数组的前半部分创建一个树作为根节点的左子树,后半部分创建一个二叉搜索树...
分类:
编程语言 时间:
2015-01-04 17:10:58
阅读次数:
195
写这个玩意,我也是深深地感觉到自己数据结构的薄弱,可笑的是我一直以为学的还可以,结果一个堆结构就干了我半个月,才懂个大概= =,我也是醉了
BinaryTree.h二叉树的实现
/**
* 书本:《算法分析与设计》
* 功能:这个头文件是为了实现二叉树
* 文件:BinaryTree.h
* 时间:2014年12月15日18:35:51
* 作者:cutter_point
*/
// ...
分类:
编程语言 时间:
2015-01-04 10:12:18
阅读次数:
242
迭代法的学习迭代法是用于求方程或方程组近似根的一种常用的算法设计方法。设方程为f(x)=0,用某种数学方法导出等价的形式x=g(x),然后按以下步骤执行:(1) 选一个方程的近似根,赋给变量x0;(2) 将x0的值保存于变量x1,然后计算g(x1),并将结果存于变量x0;(3) 当x0与x1的...
分类:
其他好文 时间:
2014-12-31 00:59:38
阅读次数:
307
一般定义: 程序调用自身的编程技巧称为递归(recursion)。递归做为一种算法设计技巧,是指函数/过程/子程序在运行过程中直接或间接调用自身而产生的重入现象。递归过程总是一个过程还未执行完就执行另一个过程(但是执行另一过程前会保存未执行完时候的变量值),如此反复,一直执行到边界条件,执行完余下的...
分类:
其他好文 时间:
2014-12-21 11:26:59
阅读次数:
211
离散数学的定义及其在各学科领域的重要作用。离散数学(Discrete mathematics)是研究离散量的结构及其相互关系的数学学科,是现代数学的一个重要分支。它在各学科领域,特别在计算机科学与技术领域有着广泛的应用,同时离散数学也是计算机专业的许多专业课程,如程序设计语言、数据结构、操作系统、编译技术、人工智能、数据库、算法设计与分析、理论计算机科学基础等必不可少的先行课程。通过离散数学的学习,不但可以掌握处理离散结构的描述工具和方法,为后续课程的学习创造条件,而且可以提高抽象思维和严格的逻辑推理能力,...
分类:
其他好文 时间:
2014-12-18 22:25:59
阅读次数:
320
动态规划方法通常用来求解最优化问题。动态规划算法设计步骤:
1.刻画一个最优解的结构特征。
2.递归定义最优解的值。
3.计算最优解的值,通常采用自底向上的方法。
4.利用计算出的信息构造一个最优解。
动态规划的实现方法:
带备忘的自顶向下法:此方法仍按自然的递归形式编写过程,但过程会保存每个子问题的解(通常保存在一个数组或散列表中)。当需要一个子问题的解时,过...
分类:
编程语言 时间:
2014-12-13 09:37:19
阅读次数:
270
实验名称:最小代价生成树实验章节:算法设计与分析第6章实验目的: 掌握贪心算法解决问题的思想和一般过程, 学会使用普里姆算法解决实际问题。提交形式: 所有作业的原程序和可执行程序(即cpp文件和exe文件) 纸质实验报告(格式和内容请参阅末页)实验内容完善下列程序,并回答问题。 1 #includ....
分类:
其他好文 时间:
2014-12-12 16:28:55
阅读次数:
463