- 浏览: 79007 次
- 性别:
- 来自: 拜月神教
最新评论
-
huangfenghit:
你绝对的大牛~
答复: 阿里巴巴面试感言 -
liuxuejin:
好!慢慢下载来看看
区间树 -
xiaobian:
看不懂,怎么知道是讲的好呢 ?
数据挖掘 决策树ID3算法原理 -
longay00:
不错,很牛,不过没有原理与实验很难相信它的正确性。从代码上看, ...
决策树C4.5算法 -
yangguo:
用我的study方法就可以了。
答复: java最优算法讨论
文章列表
庞果覆盖数字原题如下
给定整数区间[a,b]和整数区间[x,y],你可以使用任意多次a,b之间的整数做加法,可以凑出多少个[x,y]区间内的整数?输入 a,b,x,y,其中1<= a < b <= 1000000000, 1 <= x < y <= 1000000000。输出: 用[a,b]内的整数做任意多次加法,可以得到多少个[x,y]内的整数。例如a = 8, b = 10, x = 3 , y = 20我们可以得到 [3..20]之间的整数 8, 9, 10, 16 ( 8 + 8), 17(8 + 9), 18(9 + 9), 19(9 + 10), ...
package com.leon.cc;
import com.leon.util.Stack;
/**
* @author : Leon
* @since : 2013-10-9
* @see :
*/
public class Tree {
Node root = new Node();
public void insert(String str) {
Node node = search_node(root, str);
node.insert(str);
...
编译原理生成LL1预测分析表
- 博客分类:
- 数据结构与算法
package com.leon;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
/**
* @author : Leon
* @since : 2013-8-11
* @see :
*/
public class LL1 {
public String[] grammar_str;
private int token_i;
private String lambda ...
传说问题是这样的
玩过KOF(拳皇)的人都知道,玩的时候会连招是比较强的。题目的大概意思是:每招用一个大写字母表示,如ABC...Z,现给定n个连招公式:S→T,其中S长度为m,T的长度为1。在前m招的时候可以随便连,但m+1招后就必须遵循连招公式。现在要写一个算法,计算最长连招的长度;如果可以无限连招,则返回def。1≤n,m≤100
给了一个例子:n=4,m=3,连招公式为:ABC→C,ABC→D,CCA→A,BCC→A。连招公式的意思是:A、B、C可以连出C,也可连出D,C、C、A可以连出A,B、C、A、可以连出B。这时候可以得到最长连招公式:ABC→C→A→A,即最长连招公式长度为6。 ...
本年度还有8篇博客需要完成
开篇前附加一个看完《盗梦空间》的我的假设
这假设和薛定谔的猫处于半死半活的叠加态感觉有点像
世界全都是我做的梦
1:因为世界中的任何一个人“你”,不能对我证明“你”是有意识的还是只是我的虚构。
2:“你”是有意识还是虚构只能由你自己证明
这是我的某一篇论坛回复
原题是hdu的1195;题目是英文的,大意我翻译一下。
有一个紧急开启密码锁的任务。密码由四位数字组成;每个数字从1到9;每次,可以对每一个数字进行加1或者减1;当从1加到9时,由9再加1会变为1;当从9减到1时,由1再减1会变为9;也可以交换两个相邻的数字,每次操作作为一个step
...
这是我的论坛某一篇回复。虽然与楼主要求不一致,但这种结构在实际开发中很常见,比较有代表意义,因此收入博客。
原问题是这样的
有一字符串,格式为
1,2@1,3@1,7@2@1,5@1,12@9@1,16@10@5@1
上面字符串每个逗号分隔开的单独部分都是一颗树形结构的层级关系表示。比如说5@1是说自己的节点id为5,父级节点id为1.其他类似。
问题是,怎么根据上面一个字符串构建出该字符串对应的tree来。
由此题扩展,回想起我3年前开发过的一个报表功能
该种报表是为了统计各部门盈利状况。其中各个部门之间有从属关系,类似于原题中的2@1;每个叶子部门 ...
这是回复某一篇关于散列,完全散列的帖子写的代码。
再把问题描述一遍:
在两个很大的字符串数组中,求两个数组中共有的字符串
写一个o(m*n)的算法很容易
实际上引入hash,完全把复杂度降到o(m+n)
但是引入hash,需要 ...
jasperreport没有内置的排序功能;在pdf进行group的时候,除非你在sql中进行了排序,否则group的结果会让人感到很杯具。
所以就写了这个东东。完整代码见附件
几个类:
Order:设置按属性排序,DESC,ASC
Util:设定支持原生类型
Main:排序类
用法:
Order order = new Order().add("city", Order.ASC).add("id", Order.DESC);
List result = m.getOrderedData(list, order);
使用规则:
...
excel内容比较工具
写这个工具的原因:
最近重构一本excel报表程序。由于程序上线很久,有很好的稳定性;但是随着最近版本增加的越来越多,程序也开始越来越难维护;因此老程序不动,在工程中重新开辟了一个package放重构后的程序。这样就引入了这样一个问题:重构前的程序和重构后的程序要在打印结果上要求完全一致。
比较生成的excel内容,有两种解决方案:
第一种是写VBA
第二种是用POI
我选择了POI,因为可以很好的结合到junit中。
按如下方式使用,程序见附件
assertFalse(!new CompareExcel(path).compareExcel(s ...
好吧,我承认我闲的蛋疼
问题:3000万条的记录取最大的前50条数据
这题的时间复杂度应该是3000W*lg50
需要取前50个数构造heap恒长为50的最小堆
第51个数开始,与根节点比较,如果大于根节点,与根节点交换,并进行一次最小堆的minHeapify过程
内存2G很宽裕
代码如下(PS:我是没时间做3000W的数据,除非我真的蛋疼)
package org.leon.testcase;
public class Main {
public static void main(String[] args) {
int[] target = {12,4,3,56,11,1 ...
- 2009-10-09 22:27
- 浏览 2184
- 评论(4)
看到很多po,vo不写toString()方法,我们在调试程序的时候,需要一条一条的加输出,碰到属性很多的po,vo。我们可能就在崩溃的边缘了
因此写了一个po,vo的万能toString
支持全属性输出以及指定某些属性输出两种模式
以及支持集合及树状显示
用法
全属性:POJODecorator.toPOJOString(obj);
指定方法:POJODecorator.toPOJOString(obj,"getProducttype;getProductname");
代码见附件
AD.:
2年J2EE经验,熟悉常用数据结构算法,熟悉常用开发框架。
手机:15940949592,欢迎骚扰及内部推荐
题外话:为什么用java来写呢,因为可以写的又臭又长
正文:
传送门,引用ahuaxuan大牛的帖子,使用DFA实现文字过滤
在ahuaxuan的帖子中,实际上也引入了一个基于Trie字典树中文分词的问题。
图1:一个典型的Trie树结构
其中图1 state为1时表示从根结点到state=1的结点成一个词
图1由三个词组成:“上海”,“上海浦东”,“上海浦东发展银行”
将“上海浦东发展银行”进行词语切分,在不使用正向最大匹配及逆向最大 ...
数据挖掘中决策树C4.5预测算法实现(半成品,还要写规则后煎支及对非离散数据信息增益计算),下一篇博客讲原理
package org.struct.decisiontree;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.TreeSet;
/**
* @author Leon.Chen
*/
public class DecisionTreeBaseC4p5 {
/**
* root node
* ...
- 2009-05-19 02:05
- 浏览 5257
- 评论(2)
//http://pipboy.group.iteye.com/
//how to build app as jar file:
//run build.xml
//how to use this app
//example:
import java.util.List;
import java.util.Map;
import org.apache.commons.dbcp.BasicDataSource;
import com.pipboy.util.Query;
import com.pipboy.util.QueryFactory;
pub ...
- 2009-01-20 11:32
- 浏览 1382
- 评论(0)
SELECT
TABNAME,COLNAME
FROM
SYSCAT.COLUMNS
WHERE TABNAME=
(SELECT
TABNAME
FROM
SYSCAT.TABLES
WHERE TBSPACEID=5 AND TABLEID=260)
AND COLNO=3;
- 2008-10-17 15:33
- 浏览 1193
- 评论(0)