- 博客(27)
- 资源 (1)
- 收藏
- 关注
原创 GAlib在VS上的安装配置
1. 新建项目新建项目>win32项目,输入项目名称,确认项目存储位置及选中为解决方案创建目录,创建空项目,完成。2. 入GALib中的文件导入头文件*.h和*.c文件3. 修改项目配置配置属性—>常规:配置类型=应用程序(.exe)公共语言运行时支持=无公共语言运行时支持C/C++—>常规:附加包含目录 = (GALib所在目录)C/C++—>预处理
2016-10-27 21:24:21 841 1
原创 抽象数据类型及基本操作验证
/* c1-1.h 采用动态分配的顺序存储结构 */typedef ElemType *Triplet; // 由InitTriplet分配三个元素存储空间// Triplet类型是ElemType类型的指针,存放ElemType类型的地址 #include #include #include #include #include #include #include #incl
2016-10-27 13:43:19 1064
原创 计算1-1/x+1/x*x… */
/* algo1-1.c 计算1-1/x+1/x*x… */ #include #include void main() { struct timeb t1,t2; long t; double x,sum=1,sum1; int i,j,n; printf("请输入x n:"); scanf("%lf%d",&x,&n); ftime(&t1);
2016-10-26 21:54:50 1143
原创 GA的产生与发展
20世纪50年代和60年代,进化的思想->"人工进化系统"——雏形60年代初期,柏林工业大学 I.Rechenberg和H.P.Schwefel-风洞试验-生物变异的思想来随机改变参数值->分支-进化策略(ES Evolutionary Strategy)ES & GA 融合之势60年代L.J.Fogel-进化的思想设计FSM(Finite State Machine)——进化
2016-10-24 13:12:21 1037
原创 如何求解问题-现代启发式方法_后
l 爬山算法、模拟退火、遗传算法、禁忌搜索https://zhuanlan.zhihu.com/p/19761639「有志气的兔子」的故事:为了找出地球上最高的山,一群有志气的兔子们开始想办法:兔子朝着比现在高的地方跳去。他们找到了不远处的最高山峰。但是这座山不一定是珠穆朗玛峰。这就是局部搜索,它不能保证局部最优值就是全局最优值。兔子喝醉了。他随机地跳了很长时间。这期间,它可能
2016-10-24 11:06:32 526
原创 如何求解问题-现代启发式方法_总结
本书旨在讨论求解问题的可能性,帮助拓展自己的才能去构建新的问题和进行创造性的思维。第1章指出了造成问题求解困难的主要根源。第2章简短地介绍了一些基本概念。(表示方式、目标、评估函数、定义一个搜索问题、邻域和局部最优解、爬山法)第3、4章综述了一些经典的优化算法。(穷举搜索、局部搜索、线性规划、贪婪算法、分而治之、动态规划、分枝定界、A*算法)第5章主要是现代搜索算法。(模拟退火、禁
2016-10-24 10:46:19 1462
原创 字符串转换成整数
int StrToInt(const char * str){static const int MAX_INT = (int) ((unsigned) ~ 0 >> 1);static const int MIN_INT = - (int) ((unsigned) ~ 0 >> 1) - 1;unsigned int n = 0; // 判断输入是否为空 if (str == 0) { retur
2016-10-17 22:51:49 193
原创 计算理论基础 第2版 Harry R. Lewis 第1章
看到计算理论基础这门课程,就挺怀念郑虹老师给我们讲编译原理的那段日子了。虽然理论性强,但还是要沉下心去读一读,毕竟学术、专业都比较枯燥。这门课偏理论,主要是培养咱思考、解决问题的能力吧。根据教学,主要集中在前5章,分computability、complexity、automata三部分。计算复杂性及NP完全性作为补充。第1章就形式地介绍了算法设计与分析入门(与闭包有关),并且算法问题的讨
2016-10-17 10:59:00 2107
原创 如何求解问题-现代启发式方法(第8-9章)
明天就得汇报读书情况了,今天草草的翻了下目录,然而晚上还在讨论爱情观(自己都不认识自己了),不过还是有点收获的。第8章 旅行商问题引出的问题:最短路径是什么?大意是4个人晚上过桥,提供一个灯,A过去需要1分钟,B需要2分钟,C需要5分钟,D需要10分钟,测试了很多人给出的答案是19,而其实最短的时间是17(好吧,也就每章第一个问题有些意思,后面就枯燥了)。本章讲的是旅行商问题,NP
2016-10-16 22:47:03 490
原创 如何求解问题-现代启发式方法(3-7章)
已经看吐了第3章经典算法可以分为两类:1、对完整解进行操作的;2、对部分解或近似解进行评估的。如果你的问题是求一个函数的最大值,该函数是一些变量的线性组合,而变量受到等式或不等式的约束,那你最好采用线性规划方法。如果函数是光滑(即可微)、单峰的,并且要找的是最小值的话,那最好采用基于梯度和高阶函数的方法。如果你面临的是一个组合问题,比如TSP问题,那你可以采用许多利用欧氏平面中回路的一
2016-10-15 23:22:39 1072
原创 读书-如何求解问题-现代启发式方法
(美)Zbigniew Michalewicz David B.Fogel 的《如何求解-现代启发式方法》,是导师极力推荐的一本书,与看国人写的体验不太一样(尤其还带有一些翻译特色),看了前两章,有很多新的观点,并且这两章作者也不是让你光看,还有思考,动手,有几道初中数学题,但脱离了知识背景,不一定能很快做出来(反正我试过了)。这本书虽然充满了算法,但不是一本算法专著,主要还是讨论求解问题的可
2016-10-14 20:07:39 1461
原创 算法-字符串的全排列
来源:编程之法:面试和算法心得 July题目描述:输入一个字符串,打印出该字符串中字符的所有排列。例如,输入字符串“abc”,则输出“abc”、“acb”、“bac”、“bca”、“cab”和“cba”。分析与解法:解法一:递归实现 (递归理解起来也挺费劲,就像当初理解汉诺塔类似)从字符串中选出一个字符作为排列的第一个字符,然后对剩余的字符进行全排列。如此递归处理,从而得到所有字符
2016-10-14 18:36:59 216
原创 数组-选择排序
#include #include #include #define N 10/* 初始化一个数组*/void init_array(int a[], int n){ int i; srand(time(NULL)); for (i = 0; i < n; i++) { a[i] = rand() % 100; }}/* 排序*/void select_s
2016-10-14 16:07:43 194
原创 微软面试题-推理
有4张红色的牌和4张蓝色的牌,主持人先拿任意两张,再分别在A、B、C三人额头上贴任意两张牌,A、B、C三人都可以看见其余两人额头上是什么颜色的牌,A说不知道,B说不知道,C说不知道,然后A说知道了。请教如何推理,A是怎么知道的。推理:第一轮说明三个人都不知道,那么分析三个人都不知道的情况1、三个人都是一蓝一红,则三个人都不知道,但第二轮A也不会知道,排除;2、一个人是两项蓝或两项红
2016-10-13 22:14:25 289 1
原创 字符串的包含
题目描述:给定一长字符串a和一短字符串b。请问,如何最快地判断出短字符串b中的所有字符是否都在长字符串a中?编写函数bool StringContain(string &a,string &b)。假定输入的字符串只包含大写英文字母。分析与解法:解法一:蛮力轮询思路:轮询短字符串b中的每一个字符,逐个与长字符串a中的每个字符进行比较,看是否都在字符串a中代码:bool Strin
2016-10-13 21:17:38 329
原创 字符串的旋转
来源:编程之法:面试和算法心得 July著题目:给定一个字符串,要求将字符串前面的若干个字符移到字符串的尾部。例如将字符串“abcdef”的前3个字符移到字符串的尾部,那么原字符串将变成“defabc”。写一个函数实现此功能。分析与解法解法一:蛮力移位//定义一个指针s指向该字符串,然后设该字符串的长度为n,那么,编写函数LeftShiftOne(char * s, int n)实
2016-10-12 22:41:55 260
原创 单词反转
给定一个英文句子,翻转句子中单词的顺序。要求单词内字符的顺序不变,句子中单词以空格符隔开。标点符号和普通字母一样处理。例如,“I am a student.”翻转为“student. a am I”#include #include int main( ){ int i=0, j=0, begin, end; char str[] = "I am a stu
2016-10-12 21:46:05 232
原创 基于本地Ubuntu主机的Hadoop系统环境搭建
将配置环境都放于/etc/profile/1 检查是否已安装JDK配置环境$ export JAVA_HOME=/usr/local/jdk1.7$ export PATH=$JAVA_HOME/bin:${PATH}2 安装HadoopHadoop包括3个主要工程:CommonsHDFSMapReduce1) 解压缩$ tar –xf ha
2016-05-14 19:45:23 690
转载 协议
常见开源协议概述现今存在的开源协议很多,而经过Open Source Initiative组织通过批准的开源协议目前有58种http://www.opensource.org/licenses/alphabetical。 我们在常见的开源协议如BSD, GPL, LGPL,MIT等都是OSI批准的协议。如果要开源自己的代码,最好也是选择这些被批准的开源协议。BSD协议BSD
2014-12-07 21:06:49 240
原创 js表单最终
index.html 输入用户名进入注册页 function isEmpty() { if (document.form.classNo.value == "") { alert("班
2014-11-30 18:14:34 295
原创 js生日祝福
小武祝你生日快乐乐仔 生日快乐 function TList() { max=TList.arguments.length; for (i=0; i this[i]=TList.arguments[i]; } tl = new TList( " 推荐两首歌,在阅读之前,一首纯音乐——《冬雪
2014-11-30 18:10:23 5302
原创 js判断闰年
判断闰年 function isLeapYear(){ var year = document.test.year.value; if((year % 4 == 0 && year % 100 != 0)||(year % 400 == 0))
2014-11-30 18:03:09 1374
原创 猜字游戏
猜数字游戏 n = Math.floor(Math.random() * 100); function numGame(){ num = form.num.value; str = ""; s = "你输入的数字"; if(num 99){ str = s + "请输入一
2014-11-30 17:59:47 379
原创 表单注册
JJavaScript常用表单判断代码function FrontPage_Form1_Validator(theForm){ //用户名的校验 if (theForm.info1.value == "") { alert("请在 \"用户名\" 域中输入值。"); theForm.info1.focus(); return
2014-11-30 17:55:32 572
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人