- 浏览: 529749 次
- 性别:
- 来自: 天津
文章分类
- 全部博客 (230)
- java (87)
- c/c++/c# (39)
- ASP.net MVC (4)
- eclipse/visual studio (3)
- tomcat/weblogic/jetty (13)
- linux/unix/windows (20)
- html/javascript/jquery/kendo/bootstrap/layui/vue/react (31)
- hibernate/struts/spring/mybatis/springboot (21)
- lucene/solr/ELK (2)
- shiro (0)
- oracle/sqlserver/mysql/postgresql (23)
- shell/python/ruby (6)
- android (0)
- maven/ant (1)
- freemarker/thymeleaf/velocity (1)
- open source project (41)
- cache/memcached/redis (0)
- nosql/hadoop/hbase/mongodb (0)
- system architecture/dubbo/zookeeper (0)
- software testing (0)
- system optimization (0)
- system security (0)
- tcp/udp/http (2)
- roller/wordpress (2)
- 工具收藏 (8)
- 文摘 (4)
- 生活 (0)
最新评论
-
coconut_zhang:
这个demo 非常完整了,是指下面说的那个html 模版,模版 ...
flying sauser, thymeleaf实现PDF文件下载 -
a93456:
你好,你有完整的demo吗? String template这 ...
flying sauser, thymeleaf实现PDF文件下载 -
yujiaao:
fn 函数循环是没有必要的啊,可以改成
protecte ...
Java 笛卡尔积算法的简单实现 -
安静听歌:
设置了.setUseTemporaryFileDuringWr ...
使用jxl导出大数据量EXCEL时内存溢出的解决办法 -
q280499693:
写的很详细,但是我现在想知道他们是怎么定位log4j.prop ...
关于SLF4J结合Log4j使用时日志输出与指定的log4j.properties不同
在关联规则挖掘过程中,经常涉及到求一个频繁项目集的n元子集,在此设计了一个通过位操作映射子集的通用算法。
import java.util.BitSet;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class FindSubset {
private BitSet start;
private BitSet end;
private Set<Set<Object>> subsets;
public FindSubset() {
this.start = new BitSet();
this.end = new BitSet();
this.subsets = new HashSet<Set<Object>>();
}
public void execute(int n, Set<Object> items) {
int size = items.size();
for (int i = 0; i < n; i++) {
start.set(i, true);
}
for (int i = n; i < size; i++) {
start.set(i, false);
}
for (int i = size - 1; i > size - n; i--) {
end.set(i, true);
}
for (int i = 0; i < size - n; i++) {
end.set(i, false);
}
find(items);
while (start != end) {
boolean endBit = start.get(size - 1);
int last10 = -1;
int i;
for (i = size - 1; i > 0; i--) {
boolean former = start.get(i - 1);
boolean last = start.get(i);
if (former == true && last == false) {
last10 = i - 1;
break;
}
}
if (i == 0) {
break;
} else {
if (endBit == false) {
start.set(last10, false);
start.set(last10 + 1, true);
find(items);
} else {
start.set(last10, false);
start.set(last10 + 1, true);
last10 += 1;
for (int j = last10 + 1; j < size; j++) {
if (start.get(j)) {
start.set(j, false);
start.set(last10 + 1, true);
last10 += 1;
find(items);
}
}
}
}
}
}
public void find(Set<Object> items) {
Set<Object> temp = new HashSet<Object>();
Object elements[] = items.toArray();
for (int i = 0; i < elements.length; i++) {
if (start.get(i)) {
temp.add(elements[i]);
}
}
subsets.add(temp);
}
public Set<Set<Object>> getSubsets() {
return this.subsets;
}
public void clearSubsets(){
this.subsets.clear();
}
public static void main(String[] args) {
Set<Object> items = new HashSet<Object>();
items.add("A");
items.add("B");
items.add("C");
items.add("D");
items.add("E");
items.add("F");
FindSubset fs = new FindSubset();
for (int i = 0; i < items.size(); i++) {
System.out.println((i + 1) + "元子集:");
fs.execute(i + 1, items);
Iterator<Set<Object>> iterator = fs.getSubsets().iterator();
while (iterator.hasNext()) {
Object[] subset = iterator.next().toArray();
System.out.print("{");
for (int j = 0; j < subset.length - 1; j++) {
System.out.print(subset[j] + ",");
}
System.out.print(subset[subset.length - 1]);
System.out.println("}");
}
fs.clearSubsets();
}
}
}
测试结果:
1元子集:
{D}
{E}
{F}
{A}
{B}
{C}
2元子集:
{D,E}
{F,C}
{E,C}
{F,B}
{E,F}
{D,F}
{A,B}
{B,C}
{D,A}
{A,C}
{D,C}
{E,B}
{F,A}
{D,B}
{E,A}
3元子集:
{E,F,B}
{D,F,C}
{E,F,A}
{D,F,B}
{D,E,C}
{D,E,F}
{E,F,C}
{F,A,B}
{E,A,C}
{D,B,C}
{E,A,B}
{D,A,C}
{F,B,C}
{D,F,A}
{D,E,B}
{F,A,C}
{E,B,C}
{D,E,A}
{D,A,B}
{A,B,C}
4元子集:
{D,E,F,C}
{D,E,F,B}
{E,F,B,C}
{D,E,F,A}
{D,A,B,C}
{E,A,B,C}
{E,F,A,B}
{D,F,A,C}
{D,E,B,C}
{E,F,A,C}
{D,F,B,C}
{F,A,B,C}
{D,E,A,B}
{D,F,A,B}
{D,E,A,C}
5元子集:
{D,E,F,B,C}
{D,E,F,A,C}
{D,E,F,A,B}
{E,F,A,B,C}
{D,F,A,B,C}
{D,E,A,B,C}
6元子集:
{D,E,F,A,B,C}
发表评论
-
easypoi 按照模板到出excel并合并单元格
2022-11-10 21:46 101这是entity类,注解的mergeVertical是纵向合 ... -
Java时区处理之Date,Calendar,TimeZone,SimpleDateFormat
2017-03-31 14:59 1272一、概述 1、问题描述 使用Java处 ... -
jxls操作excel文件
2017-03-03 14:51 1001JXLS是基于Jakarta POI API的Excel报表 ... -
eclipse插件Maven添加依赖查询无结果的解决方法(Select Dependency doesn't work)
2016-04-22 08:33 687在eclipse中用过maven的可能都遇到过这种情况,我 ... -
Java_Ant详解
2015-06-15 16:54 6791,什么是antant是构建工 ... -
httpClient通过代理(Http Proxy)进行请求
2014-09-16 14:18 1135httpClient通过代理(Http Proxy)进行请求 ... -
httpclient上传文件及传参数
2014-09-16 11:07 11470用到的包有commons-httpclient-3.0.1. ... -
Java文件下载的几种方式
2013-08-19 14:15 828public HttpServletResponse dow ... -
http上传文件深度解析-高性能http传输
2013-07-23 10:41 9713最近在做web服务器的时候将一些应用集成在了服务器里面,比 ... -
java servlet common-fileupload 实现的文件批量上传
2013-07-18 14:31 6350结合前辈们的代码, 写了个用servlet 和 common ... -
调用axis2 WebService三种方法
2013-06-28 13:41 1735第一:简单的使用axis2包自己实现调用 package ... -
java-jsch实现sftp文件操作
2013-06-26 13:55 3602(曾在天涯)的文章详细讲解了jsch中的函数以及用法 ht ... -
url encode的问题
2012-11-06 08:27 58671.urlencode和decode 字符的编码和解码在有中 ... -
Java集合运算(交集,并集,差集)
2012-11-02 14:59 12923在实现数据挖掘一些算法或者是利用空间向量模型来发现相似文档的时 ... -
使用jxl导出大数据量EXCEL时内存溢出的解决办法
2012-11-02 14:05 11666POI或者JXL在导出大量数据的时候,由于它们将每一个单元格生 ... -
Java 笛卡尔积算法的简单实现
2012-10-31 15:26 9403笛卡尔积算法的Java实现: (1)循环内,每次只有一列向下 ... -
java实现求一个项目集合任意元子集的通用算法
2012-10-31 15:25 4在关联规则挖掘过程中,经常涉及到求一个频繁项目集的n元子集,在 ... -
使用 HttpClient 和 HtmlParser 实现简易爬虫
2012-06-27 16:33 1235这篇文章介绍了 HtmlParse ... -
分布式计算开源框架Hadoop入门
2012-06-26 13:29 1940引 在SIP项 ... -
CAS集群部署的问题
2012-06-26 09:17 2839CAS单点部署时非常容易配置,且稳定性较好,非常适合中小规模应 ...
相关推荐
c++程序设计实现集合交集并集差集.docx
# 给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列。 # 输入示例 # 输入: [1,2,3,4,5] 输出: true 示例 2: 输入: [5,4,3,2,1] 输出: false # 输出示例 # 输入: [1,2,3,4,5] 输出: true 示例 2...
等面积二元子图像直方图均衡 英文文章,名称为image enhancement based on equal area dualistic sub-image
基于JPBC的SM9算法的java实现,实现SM9算法的所有部分。包括主密钥对的生成,用户私钥生成;签名验签算法,密钥封装解封算法,数据加密解密算法,密钥交换算法;以及对《GMT 0044-2016 SM9标识密码算法:第5部分》...
具体来说,对于一个集合S,其交错幂集P(S)定义为:P(S) = {x ∈ S^n | x1 ≠ x2, 当 1 ≤ i ≤ n},其中S^n表示S的所有n元子集的集合。 该代码定义了一个递归函数computePermutations,它接受三个参数:集合S、集合S...
java java_leetcode面试题解双指针之第334题递增的三元子序列
II实现 Trie (前缀树)单词搜索 II有效的字母异位词字符串中的第一个唯一字符数组Python实现乘积最大子序列多数元素存在重复元素移动零打乱数组两个数组的交集 II递增的三元子序列搜索二维矩阵 II除自身以外数组的...
超越完备元子本原作用系统的均衡交叠对冲分析,李宗诚,,本文围绕正负能级元子的能量密度或熵量密度,确立超越完备元子的交叠作用法则,并探讨超越完备元子本原作用系统的基础均衡密度
超越完备元子自旋、对称代数与超越完备元子场,李宗诚,,本文考虑正能级元子自旋和负能级元子自旋,进而给出超越完备元子自旋 角动量守恒性假设。以此为基础,引出超越完备自旋函数和矩�
基于等价二元子图分割的直方图均衡化的彩色图像处理.pdf
基于这项技术本文实现了一个可满足性问题预处理器Snowball。实验结果验证了 这项新的正向推理技术的有效性,并表明该预处理器Snowball能够有效地化简 SAT问题的规模并减少解决SAT问题的时间,特别是对不满足问题有...
2020高频面试算法整理 leetcode ,18个大类,80+...数组|1)乘积最大子序列|2)求众数|3)旋转数组|4)存在重复元素|5)移动零|6)打乱数组|7)两个数组的交集 II|8)递增的三元子序列|9)搜索二维矩阵 II|10)除自身以外数组的乘
阿斯顿去玩儿去玩儿亲热人热情伟人我却认为而
等面积二元子图像直方图均衡化 MATLAB 代码 ,运行通过,可以学习借鉴
超越完备元子本原作用系统非均衡交叠对冲分析,李宗诚,,本文将超越完备元子本原作用系统的基础均衡分析拓展到基础非均衡分析。 这种分析仍将分别以正负能级元子的能量密度和正负能级元�
与物质耦合的高维超越完备元子作用规范场体系,李宗诚,,在正能级元子和负能级元子之间、正能级粒子和负能级粒子之间、正能级系统和负能级系统之间,乃至于在正能级宇宙和负能级宇宙之间
模型通过构造集成交易、项目任务与流程、项目组织和Agent 的四元子模型,利用Agent技术实现了不同交易治理模式下Agent 与任务、Agent之间行为交互的治理计算模型,可以输出项目成本、项目工期、质量风险、工作积压...
D维超越完备元子规范场中的真空问题初步分析,李宗诚,,本文初步探讨D维超越完备元子规范场的真空问题。对于N = 1,D = 11超越完备元子作用力,给出类完备系统引力场的真空解,并给出宇宙常
基于PCA的人脸识别matlab程序,内有ORL人脸库,这是改进版,算法效率有提高。