原创 數據庫面試相關

參考:https://juejin.im/post/5a9ca0d6518825555c1d1acd#heading-10 目錄 1. MySQL的語句執行順序 2. 數據庫的樂觀鎖和悲觀鎖是什麼? 3. SQL 約束有哪幾種?(列屬性-

原创 Synchronized實現原理

         1. 應用方式: 2. synchronized代碼塊底層原理 3. synchronized方法底層原理 1. 應用方式: 主要有以下3種應用方式: 修飾實例方法,作用於當前實例加鎖,進入同步代碼前要獲得當前實例的鎖

原创 併發關鍵字volatile(重排序和內存屏障)

參看:併發關鍵字volatile、 JAVA 基礎系列之 重排序和Volatile 指令重排是指處理器爲了提高程序運行效率,可能會對輸入代碼進行優化,它不保證各個語句的執行順序同代碼中的順序一致,但是它會保證程序最終執行結果和代碼順序執行

原创 ArrayList擴容機制

https://blog.csdn.net/u010890358/article/details/80515284     ArrayList實現了List接口,它是一個可調整大小的 Object[] 數組可以用來存放各種形式的數據。並提

原创 集合進行排序的兩種方式

目錄 方法1:實現comparable接口 方法2:自定義排序(Comparator接口、compare方法) 參考:https://www.cnblogs.com/huangjinyong/p/9037588.html java集合的

原创 Spring IOC 容器源碼分析 - 循環依賴的解決辦法

請見:https://segmentfault.com/a/1190000015221968

原创 字符串算法題

1. url字符串反轉:將www.baidu.com轉化成www.udiab.moc 參考:https://www.jianshu.com/p/30054f432d60 解題思路:1)先將字符串URL用“.”進行分割,產生一個字符串數組

原创 數組算法題

1.求一個數組中的出現次數最多的元素的個數 思路:使用HashMap存儲,key是每個元素,value是一個LinkedList,這個鏈表存儲了key對應所有的元素(即相同的元素),最後遍歷找出LinkedList對應size最大的;

原创 LeetCode | Median of Two Sorted Arrays

題目連接:https://leetcode-cn.com/problems/median-of-two-sorted-arrays/ 給定兩個大小爲 m 和 n 的有序數組 nums1 和 nums2。 請你找出這兩個有序數組的中位數,並

原创 LeetCode | reverse-integer(反轉整型)

題解:https://blog.csdn.net/five0918/article/details/52673653 題目:https://leetcode-cn.com/problems/reverse-integer/ 給出一個 32

原创 LeetCode | Add Two Numbers

題目連接:https://leetcode-cn.com/problems/add-two-numbers/ 題目: Input: (2 -> 4 -> 3) + (5 -> 6 -> 4) Output: 7 -> 0 -> 8 思路:

原创 多線程同步

目錄 1. 爲什麼引入同步機制 2. 競態條件和內存可見性 2.1 競態條件 2.2 內存可見性 3. 線程同步方法 3.1 synchronzied 3.2 JDK1.5的鎖 Lock 3.3 volatile關鍵字 1. 爲什麼引入同

原创 線程間通信

         1. 管道輸入/輸出流 2. Thread.join()的使用 3. 等待/喚醒機制 3.1 synchronied關鍵字等待/通知機制 3.2 ReentrantLock類加鎖的線程的Condition類的await(

原创 死鎖---轉賬問題

1. 轉賬死鎖場景 場景:簡單的銀行轉賬,將資金從一個賬戶(fromAccount)轉到另一個賬戶(toAccount),當併發執行的時候,可能會出現死鎖的情況; 死鎖的場景:多線程執行,線程1:賬戶A轉賬給賬戶B;線程2:賬戶B轉賬給賬

原创 死鎖的四個必要條件、預防和避免辦法

死鎖 1. 四個必要條件 2. 死鎖預防 3. 死鎖的避免 死鎖 概念:多個併發進程因爭奪系統資源而產生相互等待的現象。 1. 四個必要條件 互斥:某種資源一次只允許一個進程訪問,即該資源一旦分配給某個進程,其他進程就不能再訪問,直到該進