- 浏览: 561765 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (478)
- lucene (45)
- oracle (19)
- nutch (2)
- blog (2)
- 垂直搜索 (19)
- java综合 (89)
- spring (15)
- Hibernate (9)
- Struts (9)
- Hadoop (16)
- Mysql (12)
- nosql (10)
- Linux (3)
- MyEclipse (4)
- Ant (1)
- 设计模式 (19)
- JBPM (1)
- JSP (1)
- HtmlParser (5)
- SVN (2)
- 插件 (2)
- 收藏 (7)
- Others (1)
- Heritrix (18)
- Solr (4)
- 主题爬虫 (31)
- 内存数据库 (24)
- 分布式与海量数据 (32)
- httpclient (14)
- Tomcat (1)
- 面试宝典 (6)
- Python (14)
- 数据挖掘 (1)
- 算法 (6)
- 其他 (4)
- JVM (12)
- Redis (18)
最新评论
-
hanjiyun:
本人水平还有待提高,进步空间很大,看这些文章给我有很大的指导作 ...
JVM的内存管理 Ⅲ -
liuxinglanyue:
四年后的自己:这种方法 不靠谱。 使用javaagent的方式 ...
计算Java对象占用内存空间的大小(对于32位虚拟机而言) -
jaysoncn:
附件在哪里啊test.NoCertificationHttps ...
使用HttpClient过程中常见的一些问题 -
231fuchenxi:
你好,有redis,memlink,mysql的测试代码吗?可 ...
MemLink 性能测试 -
guyue1015:
[color=orange][/color][size=lar ...
JAVA同步机制
1.节点操作
package Source; //html树节点类 public class Node { //构造方法 public Node() { content = ""; hasContent = false; parent = null; isLeaf = true; } //构造方法,初始化此节点的内容,标签,与其父辈节点 public Node(String content, String tag, Node parent) { this.content = content; this.tag = tag; if(content.equalsIgnoreCase("")) hasContent = false; else hasContent = true; this.parent = parent; isLeaf = true; } //添加节点内容 public void addContent(String str) { content=content+str; if(content.equalsIgnoreCase("")) hasContent = false; else hasContent = true; return; } //设置为叶子 public void setLeaf(boolean is) { isLeaf = is; } //设置为块 public void setBlock(boolean is) { isBlock = is; } public String toString() { return content; } String content; String tag; boolean hasContent; boolean isLeaf; boolean isBlock; Node parent; }
2.树操作
package Source; import java.util.LinkedList; public class HTree { //构造方法,初始化 public HTree() { list = new LinkedList(); } //插入节点 public void insert(Node node) { list.add(node); } //打印整棵树的节点的信息 public void print() { int len = list.size(); for(int i = len - 1; i >= 0; i--) { Node node = (Node)list.get(i); String str = node.content.trim(); if(!str.equals("")) System.out.println(str); } } //打印块的信息 public void print2() { int len = list.size(); for(int i = len - 1; i >= 0; i--) { Node node = (Node)list.get(i); if(node.isBlock) System.out.println(node.content); } } //合并节点,将叶节点合并至其双亲 public void merge() { int len = list.size(); for(int i = len - 1; i >= 0; i--) { Node node = (Node)list.get(i); if(node.isLeaf) { Node curr = node; String str = curr.content; while(curr != null) { Node next = curr.parent; if(next != null) { if(next.hasContent) { next.addContent(str); next.setLeaf(true); node.setBlock(false); break; } next.setLeaf(false); curr = next; } else curr = null; } if(curr == null) node.setBlock(true); } } } //获取块信息 public String[] getBlock() { int len = list.size(); int num = 0; //获取非空节点的个数 for(int i = len - 1; i >= 0; i--) { Node node = (Node)list.get(i); String str = node.content.trim(); if(!str.equals("")) num++; } String contBlock[] = new String[num]; num = 0; //返回信息 for(int i = len - 1; i >= 0; i--) { Node node = (Node)list.get(i); String str = node.content.trim(); if(!str.equals("")) contBlock[num++] = str; } return contBlock; } private LinkedList list; }
发表评论
-
真正属于主题爬虫的圈子
2010-12-15 14:46 4821主题爬虫圈子:http://fcrawl.group.i ... -
判断网页的编码(转)
2010-12-04 21:11 973判断网页的编码我们主要是为了在解析网页时出现一些乱码问题。主要 ... -
java获取网页主信息之五:测试(转)
2010-12-04 21:09 9251.所需文件 param.txt:存放需要提取信息的网 ... -
java获取网页主信息之四:抽取信息块(转)
2010-12-04 21:08 1038从已经建立完成的html树中抽取主信息。 packag ... -
java获取网页主信息之三:html to tree(转)
2010-12-04 21:07 10851.所需文件 param.txt:存放需要提取信息的网 ... -
java获取网页主信息之二:辅助操作(转)
2010-12-04 21:06 9051.栈操作 package Source; ... -
主题爬虫
2010-11-29 09:19 1103昨天刚创建了一个主题爬虫的群,欢迎对主题爬虫感兴趣的朋友加入, ... -
数学之美系列 二十三 输入一个汉字需要敲多少个键 — 谈谈香农第一定律
2010-11-26 22:33 830今天各种汉字输入法已 ... -
数学之美系列二十二 由电视剧《暗算》所想到的 — 谈谈密码学的数学原理
2010-11-26 22:32 1060前一阵子看了电视剧《暗算》,蛮喜欢它的构思和里面的表演。其中有 ... -
数学之美系列二十一 - 布隆过滤器(Bloom Filter)
2010-11-26 22:32 884在日常生活中,包括在 ... -
数学之美 系列二十 -自然语言处理的教父 马库斯
2010-11-26 22:31 881我们在前面的系列中介 ... -
数学之美 系列十九 - 马尔可夫链的扩展 贝叶斯网络 (Bayesian Networks)
2010-11-26 22:31 905我们在前面的系列中多次提到马尔可夫链 (MarkovChain ... -
数学之美 系列十八 - 矩阵运算和文本处理中的分类问题
2010-11-26 22:30 858我在大学学习线性代数 ... -
数学之美 系列十七 不要把所有的鸡蛋放在一个篮子里 -- 谈谈最大熵模型 (下)
2010-11-26 22:30 840我们上次谈到用最大熵 ... -
数学之美 系列十七 闪光的不一定是金子 谈谈搜索引擎作-弊问题(Search Engine Anti-SPAM)
2010-11-26 22:29 880自从有了搜索引擎,就 ... -
数学之美 系列十六 (下)- 不要把所有的鸡蛋放在一个篮子里 最大熵模型
2010-11-26 22:27 929我们上次谈到用最大熵 ... -
数学之美 系列十五 繁与简 自然语言处理的几位精英
2010-11-26 22:26 899我在数学之美系列中一直强调的一个好方法就是简单。但是,事实上, ... -
数学之美 十四 谈谈数学模型的重要性
2010-11-26 22:25 794[注:一直关注数学之美 ... -
数学之美 系列十三 信息指纹及其应用
2010-11-26 22:25 825任何一段信息文字,都 ... -
数学之美 系列 12 - 余弦定理和新闻的分类
2010-11-26 22:24 939余弦定理和新闻的分类 ...
相关推荐
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
Java网页抓取是一个常见的任务,...由于其易用性和强大的功能,Jsoup已经成为Java开发者处理HTML数据的首选工具之一。结合完整的包集(javadoc和源码),开发者不仅可以快速上手,还能深入研究和定制,以满足特定需求。
在这个项目中,开发者可能使用了其中之一来构建浏览器的界面,如地址栏、标签页、前进/后退按钮等。 2. **URL类与HttpURLConnection**: Java中的`java.net.URL`类用于表示统一资源定位符,它帮助解析和访问网页。`...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
在 EasyUI 中,异步树是指树形节点的数据不是一次性全部加载,而是根据用户操作动态地从服务器获取。这样可以提高页面加载速度,降低服务器压力,尤其在处理大数据量时更为适用。 在 Java 后端,我们需要创建一个...
- `Jquery插件 ztree.js 最好用的开源免费树形插件,没有之一.url`可能是一个链接,指向关于zTree的详细文档或教程,帮助开发者快速上手。 - `Java的授权与认证-java教程-PHP中文网.url`可能是提供有关Java安全...
Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...
本文将深入探讨“网页动态树形菜单图”这一主题,以及与之相关的JSP技术。 动态树形菜单是一种能够展现层级关系的交互式用户界面组件,它通常用于导航菜单或数据展示,使得用户可以方便地浏览和选择层次结构中的...
Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...
GET是HTTP协议中最基础的操作之一,用于从服务器获取资源。在爬虫中,我们通常发送GET请求到目标网站的URL,以获取HTML页面内容。 1. **导入必要的库** 要在Java中执行HTTP GET请求,我们需要引入Apache ...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
jared是一个用来操作Windows注册表的 Java 类库,你可以用来对注册表信息进行读写。 GIF动画制作工具 GiftedMotion GiftedMotion是一个很小的,免费而且易于使用图像互换格式动画是能够设计一个有趣的动画了一系列...
`Collection`是Java集合框架中最基础的接口之一,它代表了一个对象的集合。`Collection`接口的主要子接口包括: - **List**:有序集合,允许重复元素,如`ArrayList`、`LinkedList`。 - **Set**:无序且不允许重复...