面试题2:单例模式:
package recover;
//单例模式–饿汉式
//1.构造器私有 2.在成员位置上创建一个对象(静态私有)3.提供一个静态的方法
public class Singleton {
private Singleton(){}
private static Singleton singleton=new Singleton();
public static Singleton getSingleton(){
return singleton;
}
}
//懒汉式
class Singleton2{
private Singleton2(){}
private static Singleton2 singleton=null;
public static synchronized Singleton2 getSingleton2(){
if(singleton==null){
singleton=new Singleton2();
}
return singleton;
}
}
2.2数组
(1)求数组中最大K个数:
利用快排思想:
缺点:不适合大数据的处理查找,会改变数组的结构
package cn.lpq.niukewang;
/**
* 获取数组中最小的K个数
* @author Administrator
*
*/
public class getLeastNumbersOfK {
public static void findLeastOfNumbersOfK(int []arr,int low,int high,int k){
if(arr==null||arr.length<1||k<1||k>arr.length)
return;
int index=partition(arr,low,high);
while(index!=k-1){
if(index