原创 BlockingQueue子類之ArrayBlockingQueue

BlockingQueue子類之ArrayBlockingQueueInterface BlockingQueue<E>public interface BlockingQueue<E> extends Queue<E>BlockingQ

原创 包含min的函數棧

包含min的函數棧定義棧的數據結構,請在該類型中實現一個能夠得到棧最小元素的min函數。 public class Solution { private Stack<Integer> stack=new Stack<>();

原创 劍指題解

劍指題解題目太多不想一個個上傳,我傳GITHUB上了:https://github.com/15952035082/algorithme/tree/master/jianzhi全是Java寫的題解

原创 Java中線程池的實現

Java中線程池的實現  當我們要使用線程時,就要去創建線程,這樣看上去似乎很正常,但是頻繁地創建線程、銷燬線程會對系統資源造成不小地負擔,大大降低了系統地效率。Java中有一個很好地工具,可以事先創建好一些線程,當我們需要使用地時候就直

原创 樂觀鎖和悲觀鎖

樂觀鎖和悲觀鎖樂觀鎖:Optimistic Concurrency Control,縮寫“OCC”,是一種併發控制的方法。樂觀鎖假設用戶之間的操作不會相互影響,自己對數據庫的操作不會受其他操作的影響,放棄了使用鎖的機制來保證但是事情是可能

原创 LinkedBlockingQueue

LinkedBlockingQueueLinkedBlockingQueue是基於鏈表的阻塞FIFO隊列,可以指定一個最大的長度限制以防止過度擴展,未指定情況下其大小爲Integer.MAX_VALUEpublic LinkedBlock

原创 ArrayList

ArrayListArrayList簡單講就是複雜版的Array,相比於Array,它能夠動態增加和減少元素。對於ArrayList而言,它實現List接口、底層使用數組保存所有元素。其操作基本上是對數組的操作。ArrayList設置了數

原创 按層輸出二叉樹

按層輸出二叉樹從上到下按層打印二叉樹,同一層結點從左至右輸出。每一層輸出一行。 public class Solution { ArrayList<ArrayList<Integer> > Print(TreeNode

原创 公平鎖與非公平鎖

公平鎖與非公平鎖公平鎖與非公平鎖即fairSybc和NonfairSync。簡單說一下兩個鎖的區別:顧名思義,公平就是先到先得,比如A和B線程均需要獲得一個鎖,但是此時鎖正在被另一個線程C佔據着,這是如果A先來B後來。那麼當C釋放鎖以後,

原创 醜數

醜數把只包含因子2、3和5的數稱作醜數(Ugly Number)。例如6、8都是醜數,但14不是,因爲它包含因子7。 習慣上我們把1當做是第一個醜數。求按從小到大的順序的第N個醜數。 import static java.lang.

原创 String StringBuffer和StringBuilder

String StringBuffer和StringBuilder     首先這三者都是用來存儲字符串的。      String、StringBuffer、StringBuilder都是被final修飾的,是不能夠被繼承改寫的。   

原创 HashMap在Java8中的紅黑樹

 紅黑樹在HashMap中的應用我們知道在jdk1.8之前,HashMap採用鏈表的方式解決衝突,不過在更新1.8版本之後,HashMap採用了鏈表加紅黑樹的方式來優化了結構。話不多說,我們來看源碼:/** * The bin

原创 Java反射

                                            Java反射   反射的功能: 能夠在程序運行時動態獲取一個類的完整信息。 在運行時判斷任意一個對象所屬的類  在運行時構造任意一個類的對象  在運行

原创 設計模式之工廠模式

                                               工廠模式 三種工廠:簡單工廠模式、工廠方法模式、抽象工廠模式。   簡單工廠模式: 簡單工廠模式:用戶可以通過工廠得到自己需要的產品,比如說通過

原创 設計模式之單例模式

                                               單例模式 餓漢式 public class HungrySingleTon { private static HungrySingle