算法设计与分析
chenchudongsg
这个作者很懒,什么都没留下…
展开
-
第1次实验——NPC问题(回溯算法、聚类分析)
实验内容(1)八皇后及N皇后问题 八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果原创 2014-06-09 15:34:40 · 706 阅读 · 0 评论 -
第四周作业——无向图的DFS算法
2. 无向图的DFS算法:按照教材中的定义方式,完整实现图的DFS算法,给定图数据文件(tinyG.txt),能够输出DFS的节点遍历结果,及每个节点的Pre和Post值,和连通分量的个数与节点构成。类名:GraphDFS。博文标题:第四周作业——无向图的DFS算法原创 2014-04-08 21:34:58 · 1180 阅读 · 0 评论 -
第7周作业1——背包问题
(1)背包问题。对上文中提到的背包问题提供的表1(数据文件下载Knapsack.txt,第一行为背包总重量15,物品数量5;第2-6行,分别为第1-5件物品的重量与价值),W=15,编程计算最终背包所装物品的编号、总重量与总价值。要求能够把构造的二维表格输出到文件KnapsackResult.txt中。博文标题:第7周作业1——背包问题。代码实现如下:package com.zuoye原创 2014-04-22 18:21:09 · 618 阅读 · 0 评论 -
第五周作业——有向图邻接表表示及反向图构造
1. 有向图中反向图构造。对tinyDG.txt(http://pan.baidu.com/s/1o6jWtcA)文件所表示的图,输出其邻接表表示 与 反向图的邻接表表示。类名:GraphReverse。博文标题:第五周作业——有向图邻接表表示及反向图构造邻接表表示示例如下:0:1 51:2:0 3……package com.zu原创 2014-04-07 21:29:39 · 971 阅读 · 0 评论 -
第三周作业——顺序查找和二分查找
2. 查找。Bentley在他的著作《Writing Correct Programs》中写道,90%的计算机专家不能在2小时内写出完全正确的二分搜索算法。 二分查找方法原型:int BSearch(int array[], int low, int high, int target ), array——含有若干整数的数组,low 与 high——查找的起始、结束下标,target—原创 2014-03-26 09:17:56 · 892 阅读 · 0 评论 -
陈楚东-第一周计算“两个整数的最大公约数”程序和《算法概论》思维导图
3. 编写程序。(5分钟-10小时)3a. 编写计算“两个整数的最大公约数”程序。 要求通过键盘输入两个整数、检查输入整数是否符合要求,并计算出其最大公约数。package com.zuoye;import java.io.IOException;import java.util.Scanner;/** * 求出两个数的最大公约数 * @au原创 2014-03-10 17:14:57 · 1446 阅读 · 0 评论 -
陈楚东-第二周实现RSA算法
1. 资料阅读。 (20分钟) 查阅 百度百科(http://baike.baidu.com/ )中“RSA”、“数字签名”、“公钥”、“DES”等4个名词的解释。理解 公钥加密 与 数字签名 之间的联系与区别,能够用自己的话阐述两者的概念。答:RSA算法是是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。虽然秘密密钥SK原创 2014-03-18 16:45:43 · 1082 阅读 · 0 评论 -
第四周作业——图的表示
1. 图的表示:给定图数据文件(tinyG.txt),计算得到图的邻接矩阵,并把邻接矩阵保存到文件(tinyG_matrix.txt)中。类名:GraphRepresentation。摘自《Algorithms, 4th Edition》P522。博文标题:第四周作业——图的表示实现代码:package com.zuoye;import java.io.BufferedRead原创 2014-04-03 12:27:42 · 704 阅读 · 0 评论 -
第六周作业1——利用哈夫曼编码英文字母表
1. 哈夫曼编码。对教材P167中习题5.18,思考并完成问题a-d。博文标题:第六周作业1——利用哈夫曼编码英文字母表原创 2014-04-14 19:06:10 · 977 阅读 · 0 评论 -
第三周作业——冒泡排序和归并排序
1. 排序。对文件 largeW.txt(下载链接)中的数据,编程实现冒泡排序(方法名:bubbleSort) 与 归并排序(mergeSort),把排序后的结果分别保存到largeW_bubble.txt 和 largeW_merge.txt 中,把两种排序结果的运行时间输出到屏幕中(发博文时把运行时间的截图作为运行结果提交)。package com.zuoye;import j原创 2014-03-26 18:19:02 · 653 阅读 · 0 评论 -
第2次实验——算法基本功与综合思考
(1)算法基本功——快速排序 对文件 largeW.txt(下载链接)中的数据,应用快速排序算法进行排序,并与冒泡排序、归并排序进行时间比较。体验算法复杂度对设计算法的影响。代码如下:原创 2014-06-10 20:12:27 · 865 阅读 · 0 评论