バイトビート-インタビューの質問記録

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が取得されます。

おすすめ

転載: blog.csdn.net/fxwentian/article/details/115218552