博弈论是人工智能中的一个分支。顾名思义就是下棋的算法。当然引申出来的应用可能不止用来下棋,也可以用来做游戏或者模拟战争策略等。博弈的基本算法也是模拟人的思维,比如当自己下子时遍历所有可能寻求最有利步骤,但是一种走法如果不能一步取胜则要考虑对方可能采取的对自己最不利的走法,如果对方不能取胜,然后再进一...
分类:
其他好文 时间:
2015-05-03 13:15:57
阅读次数:
182
最近研究了一下最近公共祖先算法,根据效率和实现方式不同可以分为基本算法、在线算法和离线算法。下面将结合hihocoder上的题目分别讲解这三种算法。1、基本算法 对于最近公共祖先问题,最容易想到的算法就是从根开始遍历到两个查询的节点,然后记录下这两条路径,两条路径中距离根节点最远的节点就是所要...
分类:
编程语言 时间:
2015-05-03 00:39:52
阅读次数:
262
import java.util.Scanner;public class DiTui { public static int fibonacci(int n){ int t1,t2; if(n==1||n==2) { return 1; } else { t1 = fibona...
分类:
编程语言 时间:
2015-04-29 16:49:51
阅读次数:
134
递归算法计算阶乘import java.util.Scanner;public class DiGui { static long fact(int n) { if(n<=1) return 1; else return n*fact(n-1); } public static void...
分类:
编程语言 时间:
2015-04-29 16:47:22
阅读次数:
125
Kruskal算法:
1:按照边的权值的顺序从小到大查看一遍,如果不产生圈(重边也算),就把当前这条边加入到生成树中,基本算法证明和prim一样
2:如何判断是否产生负圈,假设现在要把连接顶点u和顶点v的边e加入到生成树中,如果加入之前u和v不在同一个联通分量里,那么加入e也不会产生负圈,反之,如果u和v在同一个连通分量里,那么一定会产生圈,可以使用并查集高效的判断是否属于同一个连通分量
P...
分类:
编程语言 时间:
2015-04-24 22:48:54
阅读次数:
187
负载均衡的基本算法,主要有以下几种(参考F5产品):随机:负载均衡方法随机的把负载分配到各个可用的服务器上,通过随机数生成算法选取一个服务器,然后把连接发送给它。虽然许多均衡产品都支持该算法,但是它的有效性一直受到质疑,除非把服务器的可运行时间看的很重。轮询:轮询算法按顺序把每个新的连接请求分配给下...
分类:
编程语言 时间:
2015-04-24 16:17:36
阅读次数:
147
初期(校赛及省赛水题难度):一.基本算法:(1)枚举. (poj1753,poj2965)(2)贪心(poj1328,poj2109,poj2586)(3)递归和分治法.(4)递推.(5)构造法.(poj3295)(6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj...
分类:
编程语言 时间:
2015-04-14 12:39:33
阅读次数:
185
Apriori algorithm是关联规则里一项基本算法。是由Rakesh Agrawal和Ramakrishnan Srikant两位博士在1994年提出的关联规则挖掘算法。关联规则的目的就是在一个数据集中找出项与项之间的关系,也被称为购物蓝分析 (Market Basket analysis)...
分类:
其他好文 时间:
2015-04-13 18:37:09
阅读次数:
118
1. Introduction2. Principles3. Advantages4. Disadvantages5. 常见的垃圾回收技术5.1. 跟踪式垃圾回收5.1.1. 基本算法5.2. 引用计数垃圾回收5.3. 分代垃圾回收5.4. 对象使用类型分析6. 参考团队项目中用Go的地方越来越多,...
分类:
其他好文 时间:
2015-04-09 00:55:44
阅读次数:
154
string.hextern int strcmp(const char*,const char*);extern char* strcpy(char*,const char*);string.cint strcmp(const char *cs, const char *ct){ unsig...
分类:
编程语言 时间:
2015-04-05 15:58:44
阅读次数:
173