摘要: 问题描述: 设有n=2^k个运动员要进行网球循环赛。现要设计一个满足以下要求的比赛日程表: (1)每个选手必须与其他n-1个选手各赛一次; (2)每个选手一天只能参赛一次; (3)循环赛在n-1天内结束。 请按此要求将比赛日程表设计成有n行和n-1列的一个表。在表中的第i行,第j列处填入第i个选手在第j天所遇到的选手。其中1≤i≤n,1≤j≤n-1。8个选手的比赛日程表如下图: 算法思路:按分治策略,我们可以将所有的选手分为两半,则n个选手的比赛日程表可以通过n/2个选手的比赛日程表来决定。递归地用这种一分为二的策略对选手进行划分,直到只剩下两个选手时,比赛日程表的制定就变得很简单... 阅读全文
posted @ 2014-01-02 20:36 liyunyu1 阅读(5951) 评论(0) 推荐(0) 编辑
摘要: 1 import java.util.concurrent.atomic.AtomicInteger; 2 3 public class TraditionalThreadCommunication { 4 5 /** 6 * @param args 7 */ 8 public static void main(String[] args) { 9 10 final Business business = new Business();11 new Thread(12 ne... 阅读全文
posted @ 2013-12-28 16:37 liyunyu1 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1 package cn.lyy.thread; 2 3 import java.util.Random; 4 5 6 /** 7 * 基于单例模式的基础上,使用ThreadLocal为每一个进入的线程生成一个实例, 8 * 用来对数据的访问修改而不影响到别的线程对同一个数据的修改 9 * @author Administrator10 *11 */12 public class ThreadLocalTest {13 14 public static void main(String[] args) {15 for (int i = 0; i ma... 阅读全文
posted @ 2013-12-28 16:21 liyunyu1 阅读(723) 评论(0) 推荐(0) 编辑
摘要: 我们平时总是将三层架构与MVC混为一谈,殊不知它俩并不是一个概念。下面我来为大家揭晓我所知道的一些真相。首先,它俩根本不是一个概念。 三层架构是一个分层式的软件体系架构设计,它可适用于任何一个项目。 MVC是一个设计模式,它是根据项目的具体需求来决定是否适用于该项目。 那么架构跟设计模式有什么区别呢? 我们从接手一个项目开始,首先,我们需要进行架构设计,一般我们采用的就是分层式的架构设计,即我们的三层架构。 然后,在确定了架构以后,我们再根据项目的具体需求去考虑是否需要应用一些设计模式,比如是否应用我们的MVC模式,抽象工厂模式等等。(在这里我们看出,MVC与三层架构不是一个等级的... 阅读全文
posted @ 2013-12-28 11:01 liyunyu1 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 1 package cn.lyy.hibernate.many2one; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 import java.util.concurrent.locks.ReadWriteLock; 6 import java.util.concurrent.locks.ReentrantReadWriteLock; 7 8 public class MultiCacheDemo { 9 10 private Map cache = new HashMap();11 public stat... 阅读全文
posted @ 2013-12-27 20:08 liyunyu1 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 常用的MySQL命令大全一、连接MySQL格式: mysql -h主机地址 -u用户名 -p用户密码1、例1:连接到本机上的MYSQL。首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>。2、例2:连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:mysql -h110.110.110.110 -uroot - 阅读全文
posted @ 2013-12-06 10:51 liyunyu1 阅读(187) 评论(0) 推荐(0) 编辑
摘要: eclipse 开发最长用到的快捷键 Ctrl + Shift + T查看源代码 Ctrl + Shift + F 自动格式化代码 Ctrl + Shift +X,Y 改变字段大小写 Ctrl + Alt + 向下键 (向下复制一行代码) Ctrl + 1 (如果代码中有错误,先按Ctrl+1 再说)Ctrl + T 查看继承关系1、LinkedHashMap() 可以输出与存入顺序一致的数据2、JUnit test @Test @Before @After3、可变参数 public void sum(int ...nums) 传递的一定要是对象 int arr[] 就不行 Inte... 阅读全文
posted @ 2013-11-20 23:11 liyunyu1 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 1 ConvertUtils.register(new Converter(){ 2 public Object convert(Class type, Object value){ 3 if(value == null){ 4 return null; 5 } 6 if(!(value instanceof String)){ 7 throws ConversionException("只支持八种基本默认数据类型转换"); 8 } 9 Str... 阅读全文
posted @ 2013-11-20 22:53 liyunyu1 阅读(571) 评论(0) 推荐(0) 编辑
摘要: 1.用new语句创建对象,这是最常见的创建对象的方法。2.运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。3.调用对象的clone()方法。4.运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法。以下是代码片段:packageorg.whb.test.demo724;/**测试Cloneable接口的使用*包含第一种和第三种方法clone()*不过要注意在clone()中深复制和潜复制的理解*实例化对象*/classPersonimple 阅读全文
posted @ 2013-11-07 20:48 liyunyu1 阅读(688) 评论(0) 推荐(0) 编辑
摘要: 1 package org.crazyit.ball; 2 3 import java.awt.Image; 4 import java.io.File; 5 import javax.imageio.ImageIO; 6 import java.io.IOException; 7 8 /** 9 * 小球对象 10 * 11 * @author yangenxiong yangenxiong2009@gmail.com 12 * @author Kelvin Mak kelvin.mak125@gmail.com 13 * @version 1.0 14... 阅读全文
posted @ 2013-10-29 12:29 liyunyu1 阅读(1570) 评论(0) 推荐(0) 编辑