`
zhongkem
  • 浏览: 148307 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论
文章列表
java中静态代码块的用法 static用法详解 (一)java 静态代码块 静态方法区别一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用比如main方法就必须是静态的 这是程序入口两者的区别就是:静态代码块是自动执行的;静态方法是被调用的时候才执行的. 静态方法(1)在Java里,可以定义一个不需要创建对象的方法,这种方法就是静态方法。要实现这样 ...
题目比较基础,不是很难,但也有很多需要注意的地方,先看题目吧: 1.找出目录中最大的文件。(目录中可能会有子目录) 2.有两个大小分别为m,nL的容器,如何获得xL的水? package others; import java.io.File; import java.io.ObjectInputStream.GetField; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map ...
题目要求:找到一个字符串中的一个连续子串,这个子串内不能有任何两个字符是相同的,并且这个子串是符合要求的最长的。例如:abcdeab,这个字符串有很多不重复子串,比如:abcde, bcdea, cdeab都是不重复子串,而且都是最长的。//试验例子 abceaefk  abceaaaaaa import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; public class Longestsu ...
面试中经常碰到海量数据如果处理的问题。今天特意从网上搜了些结果,看到几篇好文章,记录如下: 1.海量数据处理专题(一)面试百度,腾讯,雅虎。。的利器,没写完,但已经相当不错了 2.海量数据处理相关面试题 每道题都给出了一些思路,很不错。http://hi.baidu.com/yaomohan/blog/item/9726f78f01f4daf4513d9229.html
给定一个长度为N的整数数组,只允许用乘法,计算任意(N-1)个数的组合乘积中最大的一组。 通过判断数组中0的个数,负数的个数,正数的个数,来求出最大乘积。复杂度为O(N)。 //给定一个长度为N的整数数组,只允许用乘法 ...
判断一个整数的符号,为负数返回-1,为正数返回1,为0返回0: int sign(int num) { int s = num >> 31;//如果为正数 s=0,如果为负数s=-1; num = -num; int v = (num>>31) & 0x00000001;//如果为正数v=1,如果为负数 v=0 return s | v; }  
一个数组有奇数也有偶数,把所有奇数放到数组的左边,所有偶数移到数组的右边解法比较简单,从左边找到第一个偶数,再从右边找到第一个奇数,两者交换。类似是快速排序的实现 public class OddEvenDivide { public static void main(String[] args) { int [] a={5,10,26,32,41,7,9,8,4,12,1};; System.out.println(divideOddEven(a)); for(int k:a)System.out.print(k+" "); } ...
题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18   解法比较简单,直接代码:   public class MaxsubArray { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated ...
这个数列大家应该都很熟悉,编程之美里也提到两个其它方法,对于一般人而言比较难,笔试面试里也不可能一下子想到,就先不实现了。 f(n)=f(n-1)+f(n-2),f(0)=0,f(1)=1 public class Fibonacci2_9 { public static void main(String[] args) { int x=44; System.out.println(Fibonacci1(x)); System.out.println(Fibonacci2(x)); System.out.println(Fibonacci3(x)); } ...
来源:编程之美2.7 问题:求两数的最大公约数 //求两个数的最大公约数 public class GCD2_7 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int x=4272; int y=25472; System.out.println(gcd1(x,y)); System.out.println(gcd2(x,y)); System.out.println(gcd3(x ...
来源:编程之美2.5 题目:寻找N个数中最大的k个数 书中提供的解法很多,有些用java实现起来还真有点难度,很帖两个解法吧,都是比较简单的,复杂的后面再补上。 //求N个数中最大的k个数 import java.util.PriorityQueue; public class KMax2_5 { private long []n; private int maxNum = 100; private int k = 5; private final static int BOUND = 1000; ...

1的数目

来源:编程之美2.4 题目:给定一个十进制正整数N,写下从1开始,到N的所有整数,然后 数一下其中出现的所有'1'的个数。        1.写一个函数f(N),返回1到N之间出现的‘1’的个数,比如f(12)=5;        2.求满足‘f(N)=N'的最大的N是多少 这个题比较难,需要好好的找规律 public class NumbersOfOne2_4 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ...
来源:编程之美2.3 题目:该"水王"发帖数目超过了帖子总数的一半。如果你有一个当前论坛上所有帖子(包括回帖)的列表,其中帖子作者的ID也在表中,你能快速找出这个传说中的Tango水王吗?问题实质:寻找数组中出现的半数以上的数. 思路:如果每次删除两个不同的id,则剩下的水王id依然超过总数的一半,可以不断重复这个过程。 问题扩展:如果有3个id,发贴总数都超过了帖子总数的四个之一,如果快速找到他们。思路都差不多。 /*题目:该"水王"发帖数目超过了帖子总数的一半。如果你有一个当前论坛上所有帖子(包括回帖)的列表, 其中帖子作者的ID也在表中,你 ...
来源:编程之美 2.2 题目:1.给定一个整数N,求N!末尾有多少个0 2.求N!的二进制表示中最低位1的位置 对于第一个问题,书中也给出了两种解答方法,第二种是最好的,想明白为什么这样做后就很简单了。 /** * 1.给定一个整数N,求N!末尾有多少个0 2.求N!的二进制表示中最低位1的位置 */ public class Factorial2_2 { public static void main(String[] args){ int num=100; System.out.println(zeroCount1(num)); System.o ...
开始找工作了,笔试面试中难免会碰到一些算法题,准备从今天开始,每天总结一些值得注意的题目。 现在主要从【编程之美】这本书中摘选吧。   题目:对于一个字节(8位)的无符号整型变量,求其二进制表示中“1”的个 ...
Global site tag (gtag.js) - Google Analytics