25. {プログラミング}-シングルトンモードを記述し、怠惰な男が
コードデザインをロードします。
//单例模式 懒汉模式
public class Singleton {
private static Singleton instance=null;
private Singleton(){
}
public static Singleton newInstance(){
//没有加锁 若并发调用时 可能会产生多个对象 优化synchronized
if(instance==null){
instance=new Singleton();
}
return instance;
}
}
26 {プログラミング} -100000000個の順序付けられていない浮動小数点数から10000個の最大数を見つけ、最小の時間計算量を必要とします。
問題解決のアイデア:
最小のヒープ(優先度キューが最小のヒープを実現)を使用し
て、最初の10000個の要素を優先度キューに挿入します。 、次に残りの要素のトラバースを続行します。各トラバースプロセス中に、要素の値が優先度キューの先頭の値と比較されます。現在の要素の値が優先度の先頭の値より大きい場合キュー、優先キューの先頭の値が削除され、現在の要素が挿入されるため、最大数の10,000が取得されます。