java
文章平均质量分 79
码农同学
爱动漫,爱AC,立志成为攻城师!
展开
-
nyoj 488 素数环
http://acm.nyist.net/JudgeOnline/problem.php?pid=488递归求解,其实这就是个深搜,全排列问题。经典的素数问题。要注意1自己形成素数环。import java.util.Scanner;public class Main { public static void main(String...args){ //打素数表原创 2013-05-01 12:55:38 · 1069 阅读 · 0 评论 -
OCJP(1Z0-851) 模拟题分析(三)
Exam : 1Z0-851Java Standard Edition 6 Programmer Certified Professional Exam以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 61Given:1. public class TestString1 {2. public static原创 2013-02-07 22:36:36 · 15652 阅读 · 8 评论 -
poj 3984 迷宫问题 (广度优先BFS)
基本的广度优先搜索。import java.util.LinkedList;import java.util.Queue;import java.util.Scanner;public class Main { public static void main(String...args){ Main main = new Main(); main.input(原创 2013-03-27 21:29:37 · 1258 阅读 · 0 评论 -
OCJP(1Z0-851) 模拟题分析(六)
Exam : 1Z0-851Java Standard Edition 6 Programmer Certified Professional Exam以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 167Given:1. import java.util.*;2. public class WrappedSt原创 2013-02-10 21:05:11 · 9289 阅读 · 3 评论 -
OCJP(1Z0-851) 模拟题分析(七)
Exam : 1Z0-851 Java Standard Edition 6 Programmer Certified Professional Exam 以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 201Given:1. public class TestString3 {2. public static voi原创 2013-02-11 20:07:05 · 9741 阅读 · 1 评论 -
OCJP(1Z0-851) 模拟题分析(八)
Exam : 1Z0-851 Java Standard Edition 6 Programmer Certified Professional Exam 以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 235Given:5. class Payload {6. private int weight;7.原创 2013-02-11 22:55:17 · 7554 阅读 · 1 评论 -
OCJP(1Z0-851) 模拟题分析(九)
Exam : 1Z0-851 Java Standard Edition 6 Programmer Certified Professional Exam 以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 261Given:3. class Employee {4. String name; double bas原创 2013-02-12 00:02:55 · 6282 阅读 · 1 评论 -
OCJP(1Z0-851) 模拟题分析(二)
Exam : 1Z0-851Java Standard Edition 6 Programmer Certified Professional Exam以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 31Given:1. interface A { public void aMethod(); }2. interface原创 2013-02-07 20:52:52 · 9024 阅读 · 2 评论 -
关于Java多态性的两个特殊情况
我要分析的两种情况与static和final两个修饰符有关~1)staticstatic修饰的方法不能被重写,而final修饰的方法也不能被重写。2)final由于private和public的可见性不同,private仅仅是某个特定的类可见,而子类不可见,所以允许子类和父类都可以有用private final修饰的相同方法,如下例中的public final vo原创 2013-02-14 20:09:52 · 1018 阅读 · 0 评论 -
Core Java(十二) Object类的重要方法
Object是所有类的最终祖先。,可以使用Object类引用任何类型的对象。在Java中,只有基本类型不是对象。Equals方法Object类中的equals方法用于检测一个对象是否等于另外一个对象。在Object类中,这个方法将判断两个对象是否具有相同的引用。但是,我们一般意义上的相等不仅仅是具有相同的引用,如果另个对象的状态相等,就认为另个对象是相等的。所以,子类要重写超级类中的e原创 2013-01-22 19:35:08 · 4505 阅读 · 0 评论 -
Core Java (十一) Java 继承,类,超类和子类
继承关系两个类之间存在三种关系:依赖,uses-a,如果一个类的方法操纵另一个对象,我们就说一个类依赖于另一个类。聚合(关联),has-a,一个对象包含另外一个对象,聚合关系意味着类A的对象包含类B的对象。继承,is-a,如果两个类之间存在明显的is-a(是)关系,例如每个经理都是雇员,那这两个类有继承关系。例如:class Manager extends Employee原创 2013-01-22 17:08:22 · 8475 阅读 · 0 评论 -
Core Java (十) 对象与类总结
一定要将数据设计为私有一定要对数据初始化不要在类中使用过多的基本数据类型不是所有的域都需要独立的域访问器和域更改器使用标准格式进行类的定义;按照公有,包作用域,私有的顺序;每一部分中,要按照实例方法,静态方法,实例域,静态域的顺序列出来。将职责过多的类进行分解类名和方法要能够体现他们的职责下面一个测试程序,测试了重载构造器,调用另一构造器,默认构造器,对象初始化块,静态初始化块,实例域初始化等原创 2013-01-22 10:16:41 · 959 阅读 · 0 评论 -
Core Java (九) Java的方法参数
在各种程序设计语言中方法的参数有两种,分别是:值调用,引用调用。Java程序设计语言总是采用值调用,即方法得到了所有参数值的一个拷贝。细分的话,方法参数一共两种类型:如果参数是基本数据类型,那么传递的是一个基本数据类型的值;如果参数是对象,那么传递的是一个对象引用的拷贝,注意不是C++中的对象引用。这个引用的拷贝和其他的拷贝一样,同时引用了一个对象。一个方法不可能修改一原创 2013-01-22 00:35:29 · 753 阅读 · 0 评论 -
使用Java正则表达式来提取一篇文章中的邮箱账号
这个程序将从一个名为source.txt的文档中匹配邮箱帐号,然后,将文档中所有的邮箱全部都收集起来存储到另一个文件mailCollect.txt中。利用了Java的正则表达式。package com.xujin;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileRe原创 2013-03-21 22:17:26 · 1752 阅读 · 0 评论 -
猜数字游戏(Java Swing 界面实现)
Java写的文曲星猜数字游戏,系统会自动生成一个4位且每一位都各不相同的数字,当你猜测该数字时有A和B两种提示信息,其中A代表所猜数字中有该数字且位置也正确,而B代表所猜数字仅有该数字但是位置不正确。当猜对全部数字时即闯关成功(即4A0B)。输入一个四位数都不相同的数字,系统会自动检查是否匹配,如果不匹配,就会输出一个nAnB的提示,要求玩家再输入一个数字。package com.xu原创 2013-03-21 22:14:49 · 8549 阅读 · 2 评论 -
关于康托展开
以下定义援引自wiki百科:康托展开是一个全排列到一个自然数的双射,常用于构建哈希表时的空间压缩。 康托展开的实质是计算当前排列在所有由小到大全排列中的顺序,因此是可逆的。康托展开的公式:X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0!其中,a[i]为整数,并且0例如:一个排列:3 4 6 5 1原创 2013-03-25 20:06:13 · 971 阅读 · 0 评论 -
hdu 2553 N皇后问题
八皇后问题http://acm.hdu.edu.cn/showproblem.php?pid=2553如题,回溯~~import java.util.Scanner;public class Main { public static void main(String...args){ for(int i = 1; i <11 ; i++){ res = 0;原创 2012-05-23 16:13:06 · 1066 阅读 · 0 评论 -
hdu 2601 An easy problem
刷水题练练手~~数学问题,N=i*j+i+j可以转化为:N+1 = (i+1)*(j+1)问题就转化成了求有多少个大于2的整数的积为N+1。注意i要小于等于j,所以只要试到到N+1的开方就可以了。import java.util.Scanner;public class Main { public static void main(String...args){原创 2013-05-02 22:23:31 · 1025 阅读 · 0 评论 -
nyoj 155 求高精度幂
http://acm.nyist.net/JudgeOnline/problem.php?pid=155注意去除前导0,去除和小数最后面的0.要用到stripTrailingZeros函数,另外要注意,高精度浮点数BigDecimal类计算输出自动按照科学计数法来,要用toPlainString函数恢复最初状态。import java.math.BigDecimal;import j原创 2013-05-01 11:29:40 · 1408 阅读 · 0 评论 -
nyoj 665 光棍的yy
即斐波那契数列。可以递归求解,大问题化解成小问题。例如,当输入的数字为11111时(即求解res[5]),可以分成以下两种情况:111111 ,黑色部分是res[4],此时最后一个1不动,满足条件的个数即res[4]的大小。111111,黑色部分是res[3],此时最后两个1变成2,满足条件的个数即res[3]的大小。import java.math.BigInteger;原创 2013-05-01 10:44:41 · 1263 阅读 · 0 评论 -
nyoj 252 01串
题目URL:http://acm.nyist.net/JudgeOnline/problem.php?pid=252简单的动态规划要计算不含有“11”子串的n长度的01串共有多少个,n-1长度的01串有加0 or 加1两种方式来成为n长度的01串,1)加0肯定符合不含有“11”子串的要求。2)加1的话只有在尾数为0的情况下才可以。而n-1长度的01串尾数为0原创 2013-04-17 22:55:27 · 856 阅读 · 0 评论 -
OCJP(1Z0-851) 模拟题分析(五)
Exam : 1Z0-851Java Standard Edition 6 Programmer Certified Professional Exam以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 134Given:11. class Snoochy {12. Boochy booch;13. pub原创 2013-02-10 16:01:29 · 13125 阅读 · 4 评论 -
OCJP(1Z0-851) 模拟题分析(四)
Exam : 1Z0-851Java Standard Edition 6 Programmer Certified Professional Exam以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。QUESTION 101Given:12. import java.util.*;13. public class Explore原创 2013-02-08 18:20:14 · 11340 阅读 · 4 评论 -
OCJP(1Z0-851) 模拟题分析(一)
Exam : 1Z0-851Java Standard Edition 6 Programmer Certified Professional Exam以下分析全都是我自己分析或者参考网上的,定有疏漏,还请大家对我的分析提出质疑。1.Given a pre-generics implementation of a method:11. public static int s原创 2013-01-27 19:35:22 · 23161 阅读 · 10 评论 -
关于Flood-it游戏中的棋盘组别搜索的一种算法
Author:徐进 这篇文章是基于我们人工智能的徐老师在课上讲授的知识和课件,进一步具体化,代码化之后的成果。本文的部分图片来自于老师的课件。Flood-it游戏游戏棋盘: 游戏规则:从最左上的方块开始,把所有方块都变成同色。通过反复执行下述操作实现:不断地把与最左上方块相连通的原创 2013-04-12 23:30:44 · 1348 阅读 · 0 评论 -
poj 3278 catch that cow (广度优先BFS)
之前一直没怎么做广度优先的题目,目前想写个A*算法,所以先拿广度优先练练手。poj链接:http://poj.org/problem?id=3278首先建立一个队列open,这里保存所有的open表内的节点。初始化的时候把第一个节点farmer加入队列,然后针对open表内的第一个节点进行搜索,每个节点都有三个字节点:分别对应-1,+1,*2。如果其中有目标节点(cow),那么搜索成功结束原创 2013-03-26 23:35:12 · 888 阅读 · 0 评论 -
2013编程之美全国挑战赛 传话游戏
水题一枚,不过没看好题目,有个小地方让我调了好久,要注意传话是N个人之间的,要传N-1次!!!每次都要搜一遍对应表。题目列表 > 传话游戏时间限制: 1000ms 内存限制: 256MB描述Alice和Bob还有其他几位好朋友在一起玩传话游戏。这个游戏是这样进行的:首先,所有游戏者按顺序站成一排,Alice站第一位,Bob站最后一位。然后,Alice想一句话悄悄原创 2013-04-08 07:28:08 · 1575 阅读 · 5 评论 -
关于Java中的hashCode()和equals(Object other)
最近用Java写程序,发现这两个函数掌握的不好,所以专门看书研究了好久。“contains方法被重新定义,用来快速查看是否某个元素已经出现在集中。他只在某个桶中查找元素,而不必查看集合中的所有元素。”——《Core Java》当比较一个集合(Set)中是否含有一个对象的时候,调用contains函数,而contains函数又会调用hashCode快速缩小判断范围,然后再调用原创 2013-04-08 23:17:24 · 1840 阅读 · 0 评论 -
Core Java (八) Java中的代码点与代码单元
最近看core java,之前一直不明白,看了不少帖子和博客,总算搞明白了。Java中,char[]、String、StringBuilder和StringBuffer类中采用了UTF-16编码,使用U+0000~U+FFFF来表示一个基本字符(BMP字符),但是位于U+D800到U+DBFF和U+DC00到U+DFFF的char被视为无定义字符。大多数的常用Unicode字符使用一个代码单元原创 2013-01-21 21:51:21 · 4764 阅读 · 1 评论 -
Core Java (三) Java的输入与输出
一个简单的java输入输出实例,包含了最常用的输入输出函数。package com.xujin;import java.util.Date;import java.util.Scanner;public class MyTest{ static Scanner cin = new Scanner(System.in); public static void main(原创 2013-01-16 21:27:48 · 885 阅读 · 0 评论 -
Core Java (七) Java中的static修饰符
static为静态的意思,常用来修饰内部类,方法,变量。静态域static修饰的变量在每个类中只有一个副本,即这个类的所有对象共享一个变量,它属于类,不属于任何独立的对象。package com.xujin;class Base{ protected static int MAX = 100;}public class Another extends B原创 2013-01-21 00:29:20 · 885 阅读 · 0 评论 -
Core Java (二十二) 列表(List接口)
列表是一个有序的集合(an ordered Collection),可以包含重复的元素,可以包含null,也可以什么都不包含只有null。ListList接口的所有方法:Modifier and TypeMethod and Descriptionbooleanadd(E e)Appends the specified eleme原创 2013-01-26 14:16:11 · 1492 阅读 · 1 评论 -
Core Java (二十) Iterator,Iterable,Collection接口
Java集合类库将集合的接口与实现分离。同样的接口,可以有不同的实现。Java集合类的基本接口是Collection接口。而Collection接口必须实现Iterator接口。以下图表示集合框架的接口,java.lang以及java.util两个包里的。红色字体部分是OCJP考纲要求的接口。其他部分可以从左向右看,比如Collection的Subinterfaces有List,Set以及原创 2013-01-25 23:38:04 · 8362 阅读 · 4 评论 -
Core Java (十七) 异常
异常处理的任务就是将控制权从错误产生的地方转移给能够处理这种情况的错误处理器。如果某个方法不能够采用正常的途径完成它的任务,就可以通过另外一个路径退出方法。这时,方法不会继续执行,也不返回任何值,而是抛出一个封装了错误信息的对象,异常处理机制开始搜索能偶处理这种异常的异常处理器。异常对象全部派生自Thorwable类。下面的图表是OCJP的考试要求的几个异常,其实异常比这个要多原创 2013-01-24 21:12:34 · 4337 阅读 · 0 评论 -
String,StringBuffer,StringBuilder之间的区别和联系
String是字符串常量。StringBuffer是字符串变量 ,线程安全。StringBuilder是字符串变量,线程不安全。速度:String为什么String速度最慢呢?因为每次对 String 类型进行改变的时候,等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,这样,在不断生成新对象的时候旧对象就会在内存中堆积,会造成内存浪费,java的G原创 2013-01-24 23:47:12 · 1970 阅读 · 0 评论 -
一篇不错的讲解Java异常的文章
六种异常处理的陋习你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗? 1 OutputStreamWriter out = ... 2 java.sql.Connection conn = ... 3 try { // ⑸ 4 Statement stat = con转载 2013-01-24 18:10:42 · 1178 阅读 · 0 评论 -
Core Java (十四) 接口,对象克隆,回调
接口接口技术用来描述类具有什么功能,而并不给出每个功能的具体实现。一个类可以实现一个或者多个接口,并在需要借口的地方,随时使用实现了相应接口的对象。为了让类实现某个接口,通常需要:将类声明为实现给定的接口对接口中的所有方法进行定义以下例子简单的实现了一个接口compareTo:package com.xujin;public class Main{ publi原创 2013-01-22 22:36:20 · 1136 阅读 · 0 评论 -
Core Java (十五) Java中的类型转换
自动类型转换在运行程序的时候,经常需要类型转换,Java会在以下情况下,自动做数据类型的转换。转换前的数据类型与转换后的类型兼容。转换后的数据类型的表示范围比转换前的类型大。在可以转换的前提下,a->b,即使b的表示范围大于a的表示范围,但如果b的精度不够,则最终的结果会丧失一些精度。以下转换不会丧失精度:byte->shortshort->intc原创 2013-01-23 17:17:23 · 1857 阅读 · 0 评论 -
Core Java(十三) 泛型数组列表,对象包装器与自动打包,枚举类
ArrayListArrayList是一个采用类型参数的泛型类,例如ArrayList,这是一个保存有Employee类型对象的泛型数组列表。构造器:ArrayList staff = new ArrayList();下面是一个ArrayList的例子,实现了泛型数组列表的构造器,add方法,remove方法,set方法等等。package com.xujin;原创 2013-01-22 20:51:15 · 1490 阅读 · 0 评论 -
sjtu 1004 西西弗斯式的命运
http://acm.sjtu.edu.cn/OnlineJudge/problem/1004这道题总是Runtime Error,后来google了一下,发现java提交代码的时候必须只定义一个Scanner,不知道为什么,我再把多余的Scanner对象改成cin后,AC成功~~import java.util.*;public class Main { /**原创 2012-08-30 19:15:28 · 1294 阅读 · 0 评论