摘要:
在实现PageRank算法中犯了两个错误,1:在对double类型赋值时,除法中没有将分母设置为double类型,而是int类型,导致出现商为0的结果错误,导致推迟2:当定义两个数组时,对数组赋值时,忘记了,数组是对象的特点直接nowRank=resultRank;其中resultRank又重新赋值,所以导致nowRank中元素值也发生变化,因为数组是对象,赋值意味着指向了同一个对象代码:public class TestDouble { public static void main(String[] args) { int count=2; double ... 阅读全文
摘要:
1.编程之美中发帖问题如何在O(n)时间内找到发帖过半的人,或者在一个数组中找到数量过半的元素例如:4 4 1 2 4 3 4过半元素为4;该算法必须在保证有过半元素的情况下,才能找到所需元素;否者。。。import java.util.Scanner;/** * 查找数组中数量过半的元素 * @author dell * */public class Main10 { private boolean flag=true; private int findHalfMaxValue(int[] numb){ int length=numb.length; ... 阅读全文
摘要:
转载:http://blog.csdn.net/hguisu/article/details/8013489HITS算法是链接分析中非常基础且重要的算法,目前已被Teoma搜索引擎(www.teoma.com)作为链接分析算法在实际中使用。Hub页面(枢纽页面)和Authority页面(权威页面)是HITS算法最基本的两个定义。所谓“Authority”页面,是指与某个领域或者某个话题相关的高质量网页,比如搜索引擎领域,Google和百度首页即该领域的高质量网页,比如视频领域,优酷和土豆首页即该领域的高质量网页。所谓“Hub”页面,指的是包含了很多指向高质量“Authority”页面链接的网页 阅读全文
摘要:
参考:http://blog.codinglabs.org/articles/intro-to-pagerank.html当然,实际上现在的搜索引擎都是有分词机制的,例如如果以“张洋的博客”为关键词,搜索引擎会自动将其分解为“张洋 的 博客”三个词,而“的”作为停止词(Stop Word)会被过滤掉... 阅读全文
摘要:
题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。例如:如果输入如下矩阵:12345678910111213141516则依次打印出数字1, 2, 3, 4, 8, 12, 16, 15, 14, 13, 9, 5, 6, 7, 11, 10。分析:由于是从外圈到内圈的顺序依次打印,我们可以把矩阵想像成若干个圈,我们可以用一个循环来打印一个矩阵中的圈,每次打印一个圈接下来考虑循环终止的条件,假设这个矩阵的行数为rows,列数为columns,打印第一圈左上角的元素坐标为(0,0)第二圈的左上角元素为(1,1)以此类推,我们注意到,左上角的坐标中行标和列标都是相同的,于是可以选 阅读全文
摘要:
决策树的优势在于构造过程不需要任何领域知识或参数设置,因此在实际应用中,对于探测式的知识发现,决策树更加适用。上图完整表达了这个女孩决定是否见一个约会对象的策略,其中绿色节点表示判断条件,橙色节点表示决策结果,箭头表示在一个判断条件在不同情况下的决策路径,图中红色箭头表示了上面例子中女孩的决策过程。决策树(decision tree)是一个树结构(可以是二叉树或非二叉树)。其每个非叶节点表示一个特征属性上的测试,每个分支代表这个特征属性在某个值域上的输出,而每个叶节点存放一个类别。使用决策树进行决策的过程就是从根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点, 阅读全文
摘要:
第一步,计算词频。考虑到文章有长短之分,为了便于不同文章的比较,进行"词频"标准化。或者第二步,计算逆文档频率。这时,需要一个语料库(corpus),用来模拟语言的使用环境。如果一个词越常见,那么分母就越大,逆文档频率就越小越接近0。分母之所以要加1,是为了避免分母为0(即所有文档都不包含该词)。log表示对得到的值取对数。第三步,计算TF-IDF。可以看到,TF-IDF与一个词在文档中的出现次数成正比,与该词在整个语言中的出现次数成反比。所以,自动提取关键词的算法就很清楚了,就是计算出文档的每个词的TF-IDF值,然后按降序排列,取排在最前面的几个词。计算文章相似度算法: 阅读全文
摘要:
实例:81 2 4 7 3 5 6 84 7 2 1 5 3 8 6import java.util.Scanner;/** * 重建二叉树 * 81 2 4 7 3 5 6 84 7 2 1 5 3 8 6 * @author DELL * */public class ReconstructionTree { private static class Node{ private Node left=null; private Node right=null; private int value; public N... 阅读全文
摘要:
一、什么是嵌套类及内部类?可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为内部类(inner)。嵌套类从JDK1.1开始引入。其中inner类又可分为三种:其一、在一个类(外部类)中直接定义的内部类;其二、在一个方法(外部类的方法)中定义的内部类;其三、匿名内部类。下面,我将说明这几种嵌套类的使用及注意事项。二、静态嵌套类如下所示代码为定义一个静态嵌套类,在静态嵌套类内部,不能访问外部类的非静态成员,这是由Java语法中"静态方法不能直接访问非静态成员& 阅读全文
摘要:
.java里的clone分为:A:浅复制(浅克隆): 浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。b:深复制(深克隆):深复制把要复制的对象所引用的对象都复制了一遍。Java中对象的克隆,为了获取对象的一份拷贝,我们可以利用Object类的clone()方法。必须要遵循下面三点1.在派生类中覆盖基类的clone()方法,并声明为public【Object类中的clone()方法为protected的】。2.在派生类的clone()方法中,调用super.clone()。3.在派生类中实现Cloneable接口。浅复制(shallow clone):被复制对象的所有变量都含有与原来的对象 阅读全文