homework
MisterPan
不思则罔,不学则殆。
展开
-
第一周作业 -- 算法概论思维导图
使用xmind制作算法概论课程的整体思维导图,初步了解了xmind软件的使用,以及对算法概论的整体知识有了一定的了解。思维导图制作软件xmind下载: http://www.xmind.net/思维导图链接查看:算法概论 - 思维导图原创 2014-03-12 11:25:34 · 1126 阅读 · 2 评论 -
第1次实验 - NPC问题(回溯算法、聚类分析)
实验内容(1)八皇后及N皇后问题 八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出9原创 2014-06-10 16:25:28 · 786 阅读 · 0 评论 -
第六周作业1 -- 利用哈夫曼编码英文字母表
对于本次作业,画完图后得出原创 2014-04-14 10:37:33 · 1215 阅读 · 0 评论 -
第五周作业 -- 有向图邻接表表示及反向图构造
本次通过对有向图邻接表的显示原创 2014-04-08 20:20:48 · 1467 阅读 · 0 评论 -
第七周作业3 -- 最长递增子序列
参考资料:最长递增子序列详解原创 2014-04-24 09:30:59 · 896 阅读 · 0 评论 -
第四周作业 -- 图的表示
本程序将已有的图数据(边 - 边),图的边数,顶点个数,转换为邻接矩阵存储的方式。前往了解邻接矩阵代码如下:import java.io.File;import java.io.FileNotFoundException;import java.io.PrintWriter;import java.util.Scanner;public c原创 2014-04-01 22:22:21 · 618 阅读 · 0 评论 -
第三周作业 -- 冒泡排序和归并排序
对于较少的数进行排序,冒泡和归并算法的优势区分并不明显,然而,这次对长度为1000000的数组进行排序。使用冒泡排序算法,简直无情,历时43分钟有余(2619秒)!而归并排序算法对其实现仅仅使用了264毫秒,你没看错!相差的除了数值还有一个数量级!由此可见,算法的优化对于机器处理来说,其重要性不言而喻。冒泡排序参考资料:http://zh.wikipedia.org/wiki/%E5%原创 2014-03-28 08:44:58 · 960 阅读 · 0 评论 -
第二周作业04 -- 简单的公开密钥(N,e)生成算法
RSA算法的公开密钥(N,e)的生成,对于个人pc,此处生成的大质数做了缩小化处理。代码如下:1.CreateRSA.java//输入二进制数位,随机生成与该位数对应长度的二进制数(生成的数需是素数,否则重新生成),并转化为Long型的整数public class NBits2LongPrime { //素数判断算法 public int isPrime(原创 2014-03-20 22:22:38 · 1015 阅读 · 0 评论 -
第二周作业01 -- 素数的算法实现
素数:一个数除了1和它本身之外没有别的约数。本程序简单实现了随机输入一个整数,判断它是否为素数。实现代码://判断输入的数是否为质数import java.util.Scanner;public class IsPrime{ //构造函数 public IsPrime(){ System.out.print("请输入一个整数:"); input();原创 2014-03-17 11:44:03 · 636 阅读 · 0 评论 -
第二周作业03 -- 随机生成一个n位的二进制数(质数)对应的长质数
问题分析:上一篇文章提及随机生成一个n位的二进制数对应的长整数出现素数概率:一个随机的n位长的数字为素数的概率大约有1/n算法:在此只需把上一篇博客的生成数的算法中添加素性测试即可完整代码://输入二进制数位,随机生成与该位数对应长度的二进制数(生成的数需是素数,否则重新生成),并转化为Long型的整数import java.util.Scanner;publi原创 2014-03-18 10:57:50 · 1223 阅读 · 0 评论 -
第二周作业02 -- 随机生成一个n位的二进制数对应的长整数
随机生成一个n 位二进制数的对应的长整数(long)。输入:输入一个二进制的数位n,随机数bit位的长度为n(解释:3bit位,则最大为111,最小为100;n位,则该数字二进制长度为n)输出:返回该随机数的long型考虑到Math.random()生成的随机数值为0.0Math.random()1.0,因此对于生成n位长的二进制数(原创 2014-03-18 08:16:59 · 4065 阅读 · 0 评论 -
第2次实验 - 算法基本功与综合思考
对文件 largeW.txt(下载链接)中的数据,应用快速排序算法进行排序,并与冒泡排序、归并排序进行时间比较。体验算法复杂度对设计算法的影响。原创 2014-06-12 00:36:31 · 719 阅读 · 0 评论