`
zhang_xzhi_xjtu
  • 浏览: 536635 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
需要一个函数得到该数组,输入为n,k。 没有仔细考虑得到了一个油漆匠算法。 private static int[] f(int n, int k) { boolean[] bits = new boolean[n + 1]; Random r = new Random(); // k次循环,设置那些数出现在结果里。 for (int i = 0, stepRange = n + 1; i < k; i++, stepRange--) { // 设置第几个为空的位。从0开始。 int step = r.nextInt(stepRange); ...
写Swing程序的时候,觉得看console或者文件里面的log有点小辛苦,写成一个UI logger。 用法很简单,只有3步。 1 有一个控件控制是否显示日志。 logButton.addActionListener(new LogListener()); 2 获得一个logger. private static Log log = LogFactory.getLog(LogExampleFrame.class); 3 打日志 log.log(level, "log message #" + msgCount++); 在log window上可以做一些相关的操作。 设 ...
这个游戏最近玩的挺high的,画面很精致,音乐很不错,人物动作挺好玩,很多地方让人怀旧一把,像一些小游戏,小蜜蜂啊,推箱子啊之类的。里面的智力小谜题挺多的,挺好玩。 当然,最重要的是剧情谜题,虽然有时候卡住很痛苦,但是作为补偿,解决后high的程度就和被卡住的时间成正比了。
看了看Spring Web Security3.0,感觉架构很和谐。 做个小程序验证一下。 需求 1 自定义的user,role,accessDecisionManager。 2 可以配置url和role的对应关系来做web的访问权限。 s1 在web.xml中配置要应用spring web security.这个配置指明了要应用spring ...
这是一个好玩的益智游戏。
很早之前就想写一篇关于游戏的帖子了。借此纪念自己的一些逝去的岁月。但是因为总觉得会写很长,就一直没有动手。今天终于有这个心情了。 街霸 说来话就长了,记得上小学时当时还傻乎乎的到游戏厅捉玩游戏的同学,当 ...
java采用cxf发布ws. 下载cxf,新建一个工程。 定义接口 public interface Hello { String hello(String name); } 定义实现类 public class HelloImpl implements Hello { @Override public String hello(String name) { return "Hello " + name; } } 发布该service. // Create our service implementation HelloImpl hello ...
在一个JTable里面想做sorting。 继承了TableRowSorter覆盖了getComparator方法。返回了基于底层model的各个列特化的Comparator。 原本期望就可以sorting了,但是失败了,抛ClassCast异常。因为底层model有一个列里面的类型是没有实现Comparable的。 有问题,问源码。 DefaultRowSorter的compare方法调用过程中需要调用useToString来决定是否在排序之前把底层modle的值转换为string. 而TableRowSorter里面覆盖了useToString方法。 protected boolea ...
1 概念 SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统的一种机制。 2 开源的josso,cas. 开源的josso,cas的设计实现是差不多的。都是一个认证中心加数个sso代理的方式。 主要看了josso,由于有一些限制,最后没有采用。 如java web的认证方式有限制,用户统一管理。 必须承认,安全问题是复杂的,sso作为一个跨多个系统的安全方案,也不会简单到哪里去. 用户,角色,认证,授权,sso,这些个东西在一起本身没有一个通用的模型,所以只能具体问题具体分析, 借鉴一些开源的思想,做一些可以满足当前需求的简单sso。 3 设计SSO中需 ...
两个web程序 一个是java的 一个是php的 都发布于localhost上 现在要让两个web的cookie共享 可以互相访问 尝试设置了domain和path 基于localhost没有发现什么办法 一个work around 更改C:\Windows\System32\Drivers\etc\hosts文件,设置一个假域名。 127.0.0.1       allen.work.com 这时,两个web都可以设置cookie的domain为.work.com,就可以互相访问了。
josso是一个sso开源软件 本文通过浅析一个php agent的文件和一个sample来描述josso如何工作. josso版本 1.8.1 josso php agent的相关文件 nusoap php的一个ws相关的开发包。 josso-cfg.inc 配置文件。配置josso的url等等. class.jossorole.php 定义jossorole,只有name. class.jossouser.php 定义jossouser,只有name和properties. class.jossoagent.php 定义jossoagent,包含大量方法。 get ...
递归实现排列的打印功能 public static void main(String[] args) throws Exception { perm(new String[] { "a", "b", "c", "d" }); System.out.println(); perm(new String[] { "a", "b", "c", "d" }, 2); System.out.println(); p ...
今天想做一个System.out的重定向,想要得的结果是有很多个线程写System.out, 利用PipedStread重定向一个JPanel,结果拿到一堆IOException("Write end dead"). 看看PipedStream的code,发现里面有些东东值得探讨。 原有的PipedOutputStream和PipedInputStream的工作原理是这样的。 发往PipedOutputStream的byte写到PipedInputStream的一个cache中,基于PipedInputStream 构造一个标准的生产者消费者的锁协议。 查看源代码,有如下 ...
最长平台问题描述如下: 一个从小到大排列的数组,这个数组中的一个平台就是连续的一段值相同的元素。例如:122333445中22,333等都是平台,333为最长平台。 一般常见的算法是一个计算机科学家首先给出的。 private static int f1(int[] array) { if (array == null || array.length == 0) return 0; int length = 1; for (int i = 1; i < array.length; i++) { if (array[i] == array ...
凤舞凰扬 写道elmar 写道 准备1-N之间的质数的集合 然后求每个质数的不大于N的最大幂,比如N=30时,2对应的最大幂是4。 然后最小公倍数就是所有质数的相应幂的积 比如N=10 小于10的质数有2,3,5,7 对应的最大幂是:3,2,1,1 则最小公倍数是:2^3x3^2x5^1x7^1 = 2520 不过这样做估计会很吃内存的    楼上列出的这个算法不错,比我前面想出的更好,不过我还是没有理解每个素数不大于N的最大幂所包含的数学原理。 这个算法和楼上的简单的算法的思路是一样的,只不过计算的过程有了变化。 凤舞凰扬 写道 虽然想到下面这个简单的算法,个人认为不算那么高效( ...
Global site tag (gtag.js) - Google Analytics